Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi StrToInt Erorror vermeiden ! (https://www.delphipraxis.net/113373-strtoint-erorror-vermeiden.html)

Delphiturbo 6. Mai 2008 23:05

Re: StrToInt Erorror vermeiden !
 
Der code ist in ein Button und nicht zusamen in OnCeate
darum kennt Delphi Zahl1 nicht, wenn ich den Teil hier einbaue:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
if Not FileExists('MyIniFile.ini') then
S4:='0';
if StrToInt(s2) - strToInt(S1) > 10 then
ich kann nicht den Tel oben dazu einfügen
Delphi-Quellcode:
if not TryStrToInt( zahl1, S1) then S1 := 0;

silver-moon-2000 6. Mai 2008 23:06

Re: StrToInt Erorror vermeiden !
 
Zitat:

Zitat von mkinzler
Da ja das StrToInt() ein Parameter ist, wird die Funktion ja auf jedenfall ausgeführt. IfThen() entscheidet ja nur welchen Parameter als Rückgabewert genommen wird.

[OT], das letzte Mal, ich versprechs :mrgreen:
ich dachte anscheinend wieder mal falsch:
IfThen ist "definiert" als:
Delphi-Quellcode:
function IfThen(AValue: Boolean; const ATrue: Integer; const AFalse: Integer): Integer;
begin
  if AValue then
    Result := ATrue
  else
    Result := AFalse;
end;
Ich dachte, dass der Ausdruck, "der in ATrue steht", also IntToStr(s1), nur dann ausgewertet wird, wenn IfThen in den true Zweig springt... wieder was gelernt
[/OT]

Delphiturbo 6. Mai 2008 23:36

Re: StrToInt Erorror vermeiden !
 
wie kann ich feststellen ob ein Wert kein Integer ist ?

silver-moon-2000 6. Mai 2008 23:41

Re: StrToInt Erorror vermeiden !
 
Zitat:

Zitat von Delphiturbo
wie kann ich feststellen ob ein Wert kein Integer ist ?

Hatten wir z.B. in Post 4
Delphi-Quellcode:
if not TryStrToInt( zahl1, s1) then s1 := 0;
Zahl1 ist der String, der umgewandelt werden soll, s1 die Zahl, die "rauskommt"
Wenn Zahl1 eine gültige zahl darstellt, hat TryStrToInt den RückgabeWert true, andernfalls false

-> ergibt TryStrToInt( zahl1, s1) true, ist zahl1 ein gültiger Integer

Muetze1 6. Mai 2008 23:43

Re: StrToInt Erorror vermeiden !
 
Wenn er es nicht wandeln kann? Siehe Delphi-Referenz durchsuchenTryStrToInt()? Wer ist eigentlich Fred?

Delphiturbo 6. Mai 2008 23:48

Re: StrToInt Erorror vermeiden !
 
Gelöst so :
Delphi-Quellcode:
if StrToInt(S0) - StrToIntDef(S1, 0) > 10  then
:mrgreen:

silver-moon-2000 6. Mai 2008 23:55

Re: StrToInt Erorror vermeiden !
 
Zitat:

Zitat von Muetze1
Wenn er es nicht wandeln kann? Siehe Delphi-Referenz durchsuchenTryStrToInt()? Wer ist eigentlich Fred?

Ähmn, hab ich einen Fehler gemacht? Ich hab' einfach den Umkehrschluss gemacht:
Wenn er es wandeln kann, ist's ein Integer, sonst ist es kein Integer.
Ich zitiere OH:
Zitat:

TryStrToInt converts the string S, which represents an integer-type number in either decimal or hexadecimal notation, into a number, which is assigned to Value. If S does not represent a valid number, TryStrToInt returns false; otherwise TryStrToInt returns true.
Kann jedoch sein, dass ich seine Fragestellung falsch aufgefasst habe.

bezüglich Fred (man beachte die smileys)
Das wollte ich schon immer mal sagen:
Benutz' doch mal die SuFu
:mrgreen: :mrgreen:
Tante Google 5. Hit "Thread Fred, 1. Antwort"

[edit]
Argh, roter Kasten, where art thou? sind die roten Kästen eigentlich nur für sehr aktive Mitglieder gedacht? :wall:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:16 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz