Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ввод допустимых символов [D7, XP]


так себе ©   (2006-06-27 21:36:00) 

На форме Edit1.
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9', #8]) then
  key := #0;
end;

Данный код позволяет вводить только цифры и удалять введенные символы. Что необходимо добавить в код чтобы при нажатии клавиши Del на правой цифровой клавиатуре в Edit1 вводилась точка. Как я понимаю это клавиша DecimalSeparator. Прошу подсказки.


tButton   (2006-06-30 08:30:00) [1]


> Ну, дык, и укажи правильное место.
> "Перед обработкой" - слишком туманно.

ну, положим по кнопконажатию нужно взять число введённое в edit
тогда в onClick пишем
try
 n:=StrToFloat(edit1.text);
except
 ShowMessage(edit1.text+' is not a valid float value!');
end;


Leonid Troyanovsky   (2006-06-28 20:37:00) [2]


> tButton ©   (28.06.06 07:51) [2]

> а правильность можно проверять и при получении текста из
> edit'а, непосредственно перед обработкой.


Ну, дык, и укажи правильное место.
"Перед обработкой" - слишком туманно.

Да, ну, а как там насчет минус/плюс, т.е. они заказаны?

--
Regards, LVT.


tButton   (2006-06-28 07:51:00) [3]

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9', #8, DecimalSeparator]) then
 key := #0;
end;

?

а правильность можно проверять и при получении текста из edit'а, непосредственно перед обработкой.


Leonid Troyanovsky   (2006-06-27 22:09:00) [4]


> так себе   (27.06.06 21:36)  

> Данный код позволяет вводить только цифры и удалять введенные


А причем тут точка? DecimalSeparator может быть и другим.
Ну, и проверять правильность ввода надо не в OnKeyPress,
а, скажем, в OnChange. Правильность же можно оценить,
например, с помощью процедуры Val.

--
Regards, LVT.


Наверх

Титульная страница Поиск, карта сайта Написать письмо