03.) F: Wie kann man in einem Editfeld nur numerische Eingaben zulassen?
------------------------------------------------------------------------
A: Um nur Zahlen zuzulassen muss man im KeyPress Ereigniss des Editfelds das
Zeichen (Key) prüfen. Die Variable Key wird von der Prozedur geliefert und muß
nur noch geprüft werden. Entspricht das Zeichen nicht dem Filter, so wird Key
mit dem Sonderzeichen #0 (ASCII 0) überschrieben. ASCII 0 hat auf das Editfeld
keine Auswirkung. Um nur Zahlen zu akzeptieren reicht der Filter ['0'..'9']. Es
empfiehlt sich aber noch einige weitere Tasten zuzulassen, wie zum Beispiel
Zurücktaste (#

oder Punkt für Nachkommastellen ('.').
Delphi-Quelltext
1: 2: 3: 4:
| procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if not (Key in [#8, '0'..'9', '.']) then Key := #0; end; |