Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Try.... except will nicht. (https://www.delphipraxis.net/104365-try-except-will-nicht.html)

snow 2. Dez 2007 14:13


Try.... except will nicht.
 
Hallo

ich hab mal so was hier gebastelt

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var lokal : real;
begin
Try
  lokal := StrToFloat(Edit1.Text);
  Except
    lokal := 0;
    Edit2.Text := '0';
  End;
end;

end.
Ich will einen string in eine Gleitkommazahl wandlen und wieder zurück

ICh will dass wenn ich z.B 's' eingebe die Except-option ausgefürt wird.

Nur es klappt net

Ich bekomme immernoch meine fehlermeldung 's' ist kein gültiger Gleitkommawert.

Weis jemand was da net stimmen kann?

Gruß snow

mkinzler 2. Dez 2007 14:19

Re: Try.... except will nicht.
 
In der IDE oder außerhalb? Innerhalb der IDE wird die Exception trotzdem ausgelöst, wenn man dies nicht abschaltet. Besser wäre es sowieso die Exception zu verhindern.
Z.B. durch die Verhinderung von falschen Eingaben (TMaskEdit, in Events)oder durch die Verwendung anderer Konvertierungsroutienn (TryStrToInt, Val())

snow 2. Dez 2007 14:25

Re: Try.... except will nicht.
 
Ich bekomme die fehlermeldun vom Debugger.

Gruß snow


PS:// ich kann in der Try ...except durch "0" teilen, aber keinen Strtofloat machen.

mkinzler 2. Dez 2007 14:35

Re: Try.... except will nicht.
 
Wie gesagt, kann man das Verhalten für verschiedene Exceptions innerhalb der IDE abschalten. Ich würde aber trotzdem TryStrToFloat() verwenden.

snow 2. Dez 2007 14:53

Re: Try.... except will nicht.
 
Ich hab hier

http://www.delphipraxis.net/internal...t.php?t=110499

das hier gefunden

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var h: real;
begin
if not TryStrToFloat(edit1.text,h) then
begin
  showmessage('Sie Schuft! Geben Sie gefälligst eine gültige Fließkommazahl ein!');
  edit1.text:='';
end;
end;

end.

Nur leider kommt dan beim IDE

Zitat:

[Fehler] Unit1.pas(32): Es gibt keine überladene Version von 'TryStrToFloat', die man mit diesen Argumenten aufrufen kann
warum?

gruß snow

snow 2. Dez 2007 14:57

Re: Try.... except will nicht.
 
Fehler gefunden.
h darf nicht real sein.

Gruß snow


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:45 Uhr.

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