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

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

← →
-=GaLaN=- ©   (2003-10-15 11:35) [0]

При срабатывании сабжевого события в TEdit текст еще не меняется.
А хочется иметь уже измененное текстовое поле. Можно использовать OnChange, но тогда при программном изменении текста в TEdit тоже будет срабатывать событие. А надо, чтобы это происходило только если пользователь сам изменяет текст.
Как можно получить событие типа OnKeyPressed, т.е. сразу по изменению текста из-за нажатой клавиши?
Помогите, пожалуйста, никак не могу разобраться!


← →
Skier ©   (2003-10-15 11:37) [1]

WM_CHAR


← →
-=GaLaN=- ©   (2003-10-15 11:39) [2]

А что это такое и как этим пользоваться?


← →
Izyum ©   (2003-10-15 11:39) [3]

OnKeyUp


← →
Skier ©   (2003-10-15 11:44) [4]

>-=GaLaN=- © (15.10.03 11:39) [2]

> А что это такое

сообщение Windows


> как этим пользоваться?

написать свой обработчик этого сообщения и в нём заменять "плохие" символы на "хорошие"


← →
-=GaLaN=- ©   (2003-10-15 11:44) [5]

2Izyum: не годится, потому что если я зажму клавишу на пару секунд, у меня будет не несколько событий, а только одно.


← →
-=GaLaN=- ©   (2003-10-15 12:03) [6]

Вот я правильно ловлю message? Ибо ничего не ловится. =(
procedure WMChar(var Msg: TWMChar); message WM_CHAR;


← →
Skier ©   (2003-10-15 12:06) [7]

-=GaLaN=- © (15.10.03 12:03) [6]
1) Нужно писать наследник TEdit и ловить WM_CHAR в нём
procedure WMChar(var Msg: TWMChar); - это метод наследника
TEdit
2) У экземпляра класс TEdit замещать оконную процедуру см. TWndMethod и ловить WM_CHAR в нём



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

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



Память: 0.46 MB
Время: -0.985 c
3-89093
Gaber-IIEP
2003-10-08 11:22
2003.10.27
IBQuery.Filter


14-89461
Polevi
2003-10-07 10:53
2003.10.27
узнайте сколько вы должны зарабатывать


1-89287
Dmitriy O.
2003-10-13 07:59
2003.10.27
Z последовательность компанентов


3-89113
Максим
2003-10-08 11:45
2003.10.27
DBGridEh


1-89278
DimChan
2003-10-14 13:40
2003.10.27
Try...Except




   Наверх