Вниз
Скачать: 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.45 MB
Время: 0.024 c
11-1057853508
miek
2003-07-10 20:11
2004.03.28
Кладову о TBitmap


14-1078351819
pirat
2004-03-04 01:10
2004.03.28
где бы достать библиотеку для работы с БОЛЬШИМИ числами по модулю


4-1074500590
acidman
2004-01-19 11:23
2004.03.28
таскание формы без головы


6-1073415772
Alien
2004-01-06 22:02
2004.03.28
Завершение работы


1-1078382508
fatal
2004-03-04 09:41
2004.03.28
правила создания RC-файла




   Наверх