![]() |
DBEdit Field validieren
Hi all!
ich hab da mal wieder ein kleines Prob. bei dem ich eure Hilfe brauche... Eigentlich ganz einfach - ich will den Input eines DBEdit fields überprüfen. Bei 'normalen' Edit-Fields klappt es ja problemlos, ins 'onExit'-Event ein try-except-Block einzubinden und darin z.B zu prüfen, ob der eingegebene Text eine Zahl ist. Bei DBEdit-Feldern allerdings habe ich das Problem, das bei einer ungültigen Eingabe zuerst der Fehler der Datenbankkomponente kommt, und nicht das 'onExit'-Event. Ich hab ![]() Danke für euere Hilfe, grüße ben |
Re: DBEdit Field validieren
Hier ein Ansatz, wie Du vielleicht weiterkommst...Allerdings würde ich ebenfalls eher zu "fertigen" Komponenten tendieren, als solche Sachen von Hand auszucodieren:
Im OnKeyPress fängst Du alle nicht numerischen Tasten ab, falls das DBEdit nur numerische Eingaben erlauben soll:
Delphi-Quellcode:
Im OnChange Event schließlich finden die Prüfungen statt, ob der eingegebene numerische Wert im Gültigkeitsbereich liegt:
procedure TForm1.DBEdit1KeyPress(Sender: TObject; var Key: Char);
begin if not (Key in ['0'..'9','.',',']) then Key := #0; end;
Delphi-Quellcode:
Mach was draus :wink:
procedure TForm1.DBEdit1Change(Sender: TObject);
begin if strtoint(DBEdit1.Text) > 500 then begin ShowMessage('Der eingegebene Wert ist ungültig!'); dbEdit1.SelectAll; end; end; Gruß Andi |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:00 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