Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi ~ StrToInt (https://www.delphipraxis.net/20519-%7E-strtoint.html)

zecke 19. Apr 2004 13:58


~ StrToInt
 
hallo,

ich hab ne evtl. leichte Frage:

Wie kann ich eine Fehlermeldung umgehen in diesem Fall:

(Edit1.Text:='' ist der Fall übrigens =))

Delphi-Quellcode:
begin
try
time:=StrToInt(Edit1.Text);
except
Showmessage('Bitte eine Zahl eingeben ohne Leer- oder Sonderzeichen.');
end;
end;
Ich möchte halt, dass nur meine fehlermeldung kommt, aber dazu hat Delphi keine Lust.
(kk liegt am Programmierer <meistens> ^^) ich dachte eigentlich, dass ich diese Fehlermeldung umgehen kann, da der Vorgang StrToInt garnicht ausgeführt werden soll, wenn Edit1.Text keinen Text enthält.

Habe es auch schon so versucht:

Delphi-Quellcode:
begin
if Edit1.Text='' then
begin
Showmessage('Bitte eine Zahl eingeben ohne Leer- oder Sonderzeichen.');
end
else
time:=StrToInt(Edit1.Text);
end;
end;
Ich stehe auffem Schlauch, obwohl mir das problem sehr seltsam vorkommt, weil es irgendwie so einfacher Code ist, wills trotzdem nicht gehen wie ich möchte.

Also ich hoffe (ich weiß es) einer kennt die Antwort :zwinker: und bin gespannt wie die simple Lösung ausschaut :coder:

danke im voraus

sakura 19. Apr 2004 14:04

Re: ~ StrToInt
 
Diese Variante ist schon korrekt ;)

Delphi-Quellcode:
begin
  try
    time:=StrToInt(Edit1.Text);
  except
    Showmessage('Bitte eine Zahl eingeben ohne Leer- oder Sonderzeichen.');
  end;
end;
ABER: Solange Du unter Delphi arbeitest siehst Du die Info trotzdem :mrgreen: Wenn Du die App ausserhalb von Delphi startest erscheint die Meldung nicht mehr.

Lösung: Unter Delphi im Menü (meins ist English ;) ) Tools -> Debugger Options -> (Reiter) Language Exceptions -> (Checkbox) Stop On Delphi Exception den Haken entfernen.

...:cat:...

MathiasSimmack 19. Apr 2004 14:04

Re: ~ StrToInt
 
Startest du das Programm aus Delphi heraus? Dann liegt´s wohl an der Einstellung (schau mal bei den Optionen), dass Delphi standardmäßig bei Exceptions abbricht. Wenn du die Exe startest, solltest du eigentlich deine Fehlermeldung sehen.

zecke 19. Apr 2004 14:07

Re: ~ StrToInt
 
:wall: :oops: man verdammt ich geniales menschliches wesen bin nicht mal auf die idee gekommen, das proggi außerhalb von delphi zu starten - ich schäme mich...

danke funzt einwandfrei ^^

DataCool 19. Apr 2004 14:19

Re: ~ StrToInt
 
Hi,

oder Du verwendest einfach StrToIntDef, wenn die Umwandlung da nicht klappt wird der Variable ein Standardwert zugewiesen, den Du bestimmen kannst. Auf den kannst Du danach ja mit If prüfen.

Gruß Data


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:23 Uhr.

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