Вниз
Скачать: 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 вся ветка

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



Память: 0.45 MB
Время: 0.021 c
4-1083671527
Dmitry Shkil
2004-05-04 15:52
2004.06.06
Как узнать имя активного пользователя под XP


14-1084766340
Dmitriy O.
2004-05-17 07:59
2004.06.06
Реально ли вырастить капусту на Марсе ?


3-1084444960
Voland777
2004-05-13 14:42
2004.06.06
Как управлять Hint - ами веток TTreeView ???


14-1085313677
GanibalLector
2004-05-23 16:01
2004.06.06
почему так ???


3-1084511900
evgen
2004-05-14 09:18
2004.06.06
Как сохранить таблицу из DBgrid в текстовой файл




   Наверх