Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.06;
Скачать: CL | DM;

Вниз

OnKeyDown формы и контрола на форме...   Найти похожие ветки 

 
Sirus   (2004-05-27 07:04) [0]

Привет Мастера...
OnKeyDown формы выполняется раньше чем OnKeyDown контрола на этой форме...
Вопрос: можно ли как-нибудь сделать чтобы сначала выполнялся OnKeyDown контрола, а потом уже OnKeyDown формы???


 
TUser ©   (2004-05-27 07:37) [1]

В обработичике формы проверять, не попадает ли место, где расположен курсор мышки на какой-нибудь контрол.


 
Sirus   (2004-05-27 08:18) [2]

Причем тут мышь???

Дело в том что, при Key=VK_RETURN OnKeyDown контрола выполняет некоторые действия, а потом в зависимости от полученных результатов меняет свойство Enabled некоторых контролов на форме.
А в OnKeyDown формы просто осущсествляется переход фокуса на следующий контрол:
If Key=VK_RETURN then Perform(WM_NEXTDLGCTL, 0, 0);
Так вот на данный момент иногда получается что фокус переходит не на тот контрол. Т.е. сначала осуществляется переход фокуса, а потом определяется на какой контрол переходить. А мне нужно совсем наоборот.
Указывать в OnKeyDown каждого контрола SetFocus просто влом... :))


 
Sandman25+1   (2004-05-27 09:05) [3]

FormKeyDown:

if Assigned(ActiveControl.OnKeyDown) then
 ActiveControl.OnKeyDown(...);
if Key=VK_RETURN then
 ...

Могут быть ошибки, но идея, надеюсь, понятна


 
Kair ©   (2004-05-27 09:11) [4]

В OnKeyDown (в конце ессено) компонента написать то, что ты хочешь сделать в OnKeyDown формы...



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

Текущий архив: 2004.06.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.051 c
3-1084537112
vaa
2004-05-14 16:18
2004.06.06
BLOB handle


3-1084453609
юрок
2004-05-13 17:06
2004.06.06
bd


14-1084979824
Nous Mellon
2004-05-19 19:17
2004.06.06
Регистрация


14-1085082851
DIS
2004-05-20 23:54
2004.06.06
программа либо запускается, либо не запускается


4-1083428532
Vin_Ghost
2004-05-01 20:22
2004.06.06
Создание полнокранного приложения