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:
procedure TForm1.DBEdit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in ['0'..'9','.',',']) then Key := #0;
end;
Im OnChange Event schließlich finden die Prüfungen statt, ob der eingegebene numerische Wert im Gültigkeitsbereich liegt:
Delphi-Quellcode:
procedure TForm1.DBEdit1Change(Sender: TObject);
begin
if strtoint(DBEdit1.Text) > 500 then
begin
ShowMessage('Der eingegebene Wert ist ungültig!');
dbEdit1.SelectAll;
end;
end;
Mach was draus
Gruß
Andi