Hi,
wenn ein user in mein editFeld (Integer)-Zahlen eintippt und ich den Inhalt in eine DB schreiben will, kommt eine eConvertError-Exception, da meine DB in der Spalte nur Strings haben will (soll ja so sein *g*!).
Aber Exceptions im fertigen Programm sind ja nicht sehr schön, deshalb will ich es jetzt so machen, dass sobald der User ein Zeichen eintippt, geprüft wird, ob das ein String oder eine Integerzahl ist. Wie mache ich denn das?
Ich dachte daran, es einfach mal so zu probieren:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| function TForm1.checkInput(edit:TEdit):boolean; var zahl:Integer; begin try zahl:=StrToInt(edit.text); result:=true; except result:=false; edit.text:=''; end;
end; |
Leider wirft er trotzdem die gleiche exception (warum eigentlich? Müssten doch alle exceptions abgefangen werden...)
Dies Funktion soll immer über das onChange-Ereignis des EditFelds aufgerufen werden.
Kann mir jemand helfen?
Gruss und danke,
Ace
[/code]