сделал не помогло! procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin case key of #8,'0'..'9',',':; else key:=chr(0); end; If (Key=',') or (Key='.') then begin begin if Key <> DecimalSeparator then Key := DecimalSeparator; if Pos(DecimalSeparator,Edit1.text) <> 0 then Key := Chr(0); end; end; end;