![]() |
Richtige Fallunterscheidung
Hallo Liebe Community,
nun komm ich zu einer Frage die ich mir oft stelle, nämlich wie ich die richtige Fallunterscheidung mache damit mein Programm nicht abstürzt... und zwar habe ich ein Edit und möchte mit dessen Inhalt weiter arbeiten,jedoch als Integer( strtoint, das ist nicht das Problem :wink:) Das Problem ist: 1. wenn der Benutzer NICHTS eingibt, wie erkläre ich das dem Programm ?? mit if ... aber wie richtig also ich würde es so machen und es klappt nicht :
Delphi-Quellcode:
2.Wenn der Benutzer keinen Integer eingibt sondern einen String ; oder beides gemischt also da würde ich folgendes tun:
procedure TGUI.Button1Click(Sender:TObject);
begin if (Edit1.Text = '') then ShowMessage(Bitte geben sie eine Zahl ein !); // Gibts eig einen Befehl der die procedure anhählt oder beendet? // wäre an dieser eig angebracht also jetzt nicht bei so einen // einfachen Beispiel, aber bei komplexeren angelegenheiten ... else ... end;
Delphi-Quellcode:
Danke für die Hilfe
procedure TGUI.Button1Click(Sender:TObject);
begin if (Edit1.Text = ???) then // hier bräuchte ich einen Tipp ShowMessage(Bitte geben sie eine Zahl ein !); // Gibts eig einen Befehl der die procedure anhählt oder beendet? // wäre an dieser eig angebracht also jetzt nicht bei so einen // einfachen Beispiel, aber bei komplexeren angelegenheiten ... else ... end; Zuckerberg |
AW: Richtige Fallunterscheidung
Guck mal nach
![]() Übrigens, um eine Methode Anzuhalten kannst du ![]() ![]() MfG Fabian |
AW: Richtige Fallunterscheidung
StrToInt mit try/except umgeben oder gleich TryStrToInt nutzen... alternativ lässt du im Edit nur Ziffern zu.
|
AW: Richtige Fallunterscheidung
Ich selbst arbeite gerne mit eigenen Exceptions und Schutzblöcken.
Abhängig von der Exception kannst du dann reagieren. Du kannst damit natürlich z.b. strtoint nutzen um die Eingabe zu validieren, da die Exception gefangen wird. |
AW: Richtige Fallunterscheidung
Zitat:
|
AW: Richtige Fallunterscheidung
alternativ kann man die Oberfläche auch so gestalten, dass ein weiterarbeiten nur möglich ist, wenn die Eingabe korrekt ist. Also Schaltflächen nur aktivieren, wenn im Eingabefeld was drin steht oder so.
|
AW: Richtige Fallunterscheidung
Danke erstmal
nur was macht TryStrtoInt genau ?? brauch ich dabei keine if Abfrage mehr ? und wie kriegt man es hin das im Edit nur Zahlen zugelassen werden ? |
AW: Richtige Fallunterscheidung
Was der Name sagt: Es versucht einen String in einen Integer zu wandeln und gibt zurück, ob die Wandlung erfolgreich war
|
AW: Richtige Fallunterscheidung
![]() |
AW: Richtige Fallunterscheidung
Frage eins: Delphi Hilfe. Frage zwei: Forensuche.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:19 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 by Thomas Breitkreuz