Главная страница
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.022 c
14-1084713446
Gero
2004-05-16 17:17
2004.06.06
Вкладка "Безопасность" в XP.


4-1082799997
Delphist
2004-04-24 13:46
2004.06.06
Где взять инфу про перехват Api-функций + Внедрение Dll


6-1082389209
SniZ
2004-04-19 19:40
2004.06.06
Изменить IP


3-1084527368
SergeyM
2004-05-14 13:36
2004.06.06
DBMemo


1-1085539377
Vilux
2004-05-26 06:42
2004.06.06
Компонент для текста с фоном