Вниз
Скачать: CL | DM;

OnKeyPress не работает   Найти похожие ветки 

← →
alless ©   (2004-03-11 17:36) [0]

День добрый. Появилась проблема - создаю компонент, наследника от TEdit, для которого определяю событие OnKeyPress, в котором проверяется ввод только цифр.
В конструкторе моего компонента пишу:
onKeyPress:=KeyPress;// KeyPress моя процедура
1. Ставлю компонент на форму и запускаю приложение, при вводе в TEdit- е контроль на ввод не выполняется, можно вводить и буквы.
2. Создаю компонент в RunTime - тогда все работает нормально, контроль выполняется.
Подскажите плз. в чем может быть ошибка.
Заранее благодарен.


← →
Юрий Зотов ©   (2004-03-11 17:42) [1]

> alless ©   (11.03.04 17:36)  

Не надо обрабатывать событие, оставьте его пользователю компонента. Метод KeyPress уже имеется у предка - заместите его и там делайте, что нужно.

И имейте в виду, что юзер может вставлять текст из буфера обмена.


← →
WebErr ©   (2004-03-11 17:48) [2]


> Юрий Зотов ©   (11.03.04 17:42) [1]

Имеется в виду:

TWinControl.KeyPress

который можно перегрузить

procedure KeyPress(var Key: Char); override;


← →
alless ©   (2004-03-11 17:49) [3]

Я обнаружил что в 1 даже Create не срабатывается :((
А в 2 все работет

2 Юрий Зотов ©   (11.03.04 17:42) [1]
менял, не помогает


← →
Юрий Зотов ©   (2004-03-11 17:52) [4]

> alless ©   (11.03.04 17:49) [3]

Так не бывает. Вернее бывает, но только если криво сделано. Вы override, часом, не забыли ли?


← →
alless ©   (2004-03-11 17:56) [5]

2 Юрий Зотов ©   (11.03.04 17:52) [4]
Забыл. Заработало.Спасибо.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
3-1074853124
nejest
2004-01-23 13:18
2004.03.28
как сделать если нету записей, удовлетворяющих условию выводило 0


7-1073845084
MagaSoft
2004-01-11 21:18
2004.03.28
Работа с прокси!


14-1077808465
Mentov
2004-02-26 18:14
2004.03.28
Шифрование


4-1071231196
Talla2k
2003-12-12 15:13
2004.03.28
как скрыть программу


14-1077853110
CrytoGen
2004-02-27 06:38
2004.03.28
библиотечные функции, которых нет в Delphi




   Наверх