совместив два ранее предложенных пожхода получили нечто
PHP код:
var
s: string;
i: Integer;
f: Double;
procedure TForm4.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Key = '.' then Key := ',' //замена точки запятой
else
if not ( Key in [ '0'..'9' , '.' , #8 , #46 ] ) then Key := #0;
s:= Edit1.Text; //проверка ввода
if TryStrToInt(s, i) then
begin
Label5.Caption:='Целое';
exit;
end;
if TryStrToFloat(s, f) then
begin
Label5.Caption:='Дробное';
exit;
end;
Label5.Caption:='Ошибка';
end;
Но, почему-то если ввести число 4, например - выдает ошибку, если 44 - тогда пишет, что целое...
И еще хотя это и не нужно в данном проекте, но если ввести число более 12 знаков - выдает, что оно дробное, почему?