du kannst bei maxlenght schon mal 2 eingeben, dann sind schonmal nur 2 stellige
zahlen bzw. buchstaben möglich.
Wie du buchstabe rausfilterst weißt du ja schon, wenn du jetzt noch willst, dass
man nur zahlen von 1 - 10 eingeben kann, dann würde ich diesen code hier nehmen:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if not (key in ['0'..'9',#8]) then key:=#0; end;
procedure TForm1.Edit1Change(Sender: TObject); begin if 10 < strtoint (edit1.text) then edit1.text:= inttostr(10); end; |
bei on keypress wird geprüft, ob die gedrückte taste eine ziffer von 0 - 9
oder die Backspace taste ist, falls nicht, ist die Taste 0, also nichts.
bei on editchange wird jetzt geprüft, ob die eingegebene zahl größer als 10
ist, falls dies der fall ist, ist die zahl automatisch 10
Ich hoffe ich konnte dir helfen
