![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
На одном компе нужно "." а на другом "," ! [D7, WinXP]
rolex © (2005-08-02 11:01:00)Написал прогу, один из её моментов, это вытащить из edit'а число и провети с ним арифметические операции.
В результате, при запуске этой проги у меня на компе, если число ввести "0.56", вылезет ошибка "'0.56' is not a valid floating point value."
А если ввести "0,56", то всё считается нормально.
Но при запуске этой программы у друга, у него всё происходит с точностью до наоборот! (т.е. ему надо вводить не "0,56", а "0.56").
Как сделать чтобы у всех было всё одинаково?
Amido (2005-08-02 11:20:00) [1]
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
case key of
'0'..'9': ;
#8: ;
'.', ',': if Pos(DecimalSeparator, Edit1.Text)=0
then Key := DecimalSeparator
else Key := #0;
else key:=#0;
end;
end;
Только не забудьте обработать Copy/Paste в Edit1.
tormoz (2005-08-02 11:09:00) [2]
val(Edit1.text,i,code);
if code<>0 then...
wal (2005-08-02 11:07:00) [3]DecimalSeparator + например, на KeyPressed заменять точку на запятую (или наоборот).
С уважением