|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
СРОЧНО. чтобы в поля не вносилась текстовая информация
Какой код необходимо написать , чтобы не заносились в Edit текстовые символы.
Почему обработчик события onmessage компонента applicationevents действует на один edit, а их много код procedure TForm2. applicationevents1message(var msg:tagmsg; var handled:boolean); begin handled:=edit1.focused and (msg.message=wm_char) and (msg.wParam>48) and(msg.wParam>57) end может какой-нибудь другой код подойдет |
#2
|
||||
|
||||
Лично я не понял, текстовые символы, конкретно можешь сказать что не нужно заносить в Edit. Я обычно делаю ввод допустимых значений, допустим только букв или цифр, и колличество запятых, через OnKeyPress будь то Edit или StringGrid.
|
#3
|
||||
|
||||
Напиши так
Код:
procedure TForm2. applicationevents1message(var msg:tagmsg; var handled:boolean); begin handled := (msg.message=wm_char) and (msg.wParam>48) and (msg.wParam>57) end; Теперь это будет распространяться на любые компоненты, в которые можно вводить текст. В качестве альтернативы приведу другой способ. В событии KeyPress любого из Edit'ов (например Edit1) пишешь Код:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if Key in ['a'..'z','A'..'Z','а'..'я','А'..'Я','ё','Ё'] then Key := #0; end; |