Цитата:
Сообщение от Shaitanking163Rus
...но если ввожу десятичное число, то всё ошибка и не важно через точку или запятую...
|
Конечно будет ошибка, StrToInt переводит строку в целочисленное значение. Для получения вещественного значения нужно использовать StrToFloat. Также нужно все твои переменные x1, x2, y1 и прочие сделать вещественным типом.
Цитата:
Сообщение от Shaitanking163Rus
...мне нужно то бы я мог вводить дробные числа через точку...
|
Вообще-то StrToFloat работает через запятую. Для этого нужно:
Код:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
case Key of
'0'..'9', #8: ;
',':
begin
if Pos(',', (Sender as TEdit).Text) > 0 then
Key := #0;
end;
else
Key:= #0;
end;
end;
Но если уж очень нужно через точку, тогда при создании форму нужно поменять разделитель:
Код:
FormatSettings.DecimalSeparator := '.';