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

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

 
Style ©   (2004-02-26 17:17) [0]

Вот написал простенький компонентик
http://www.delphimaster.ru/cgi-bin/download.pl?get=1077799560&n=0

и столкнулся с такой проблеммой
если я хочу перемещать фокус по нажатию на клавишу Down  и фокус в данный момент находится на кнопке(TButton) расположенной в TabOrder перед двумя Полями(TEdit),
пытаюсь установить фокус на нижний Edit, а фокус становится на следующий Edit, т.е. нужное поле просто пропускается.

Как я понял, что если фокус стоит на кнопке(Buttton) и нажата клавиша курсора (Up,Left,Down) то Windows сама перемещает фокус на соседние контролы.
Т.е. в моем случае фокус перемещается дважды.

Как бы это дело заблокировать? Не прибегая к использованию Хуков?


 
Юрий Зотов ©   (2004-02-26 17:57) [1]

Посмотрите WM_GETDLGCODE


 
Skier ©   (2004-02-26 18:01) [2]

>Style ©   (26.02.04 17:17)  
Ещё можно использовать сообщение формы CM_DIALOGKEY


 
Style ©   (2004-02-27 01:53) [3]

Спасибо, что то я не совсем понял, и сделал по-другому.

http://www.delphimaster.ru/cgi-bin/download.pl?get=1077835766&n=0

Использовал CM_FOCUSCHANGED формы.

Посмотрите пожалуйста.



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

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



Память: 0.45 MB
Время: 0.033 c
1-1078484995
race1
2004-03-05 14:09
2004.03.28
computername


3-1077362832
Крутыш
2004-02-21 14:27
2004.03.28
Интересное торможение в гриде.


1-1078922826
maxon
2004-03-10 15:47
2004.03.28
создание компонента


1-1079024181
1Raily
2004-03-11 19:56
2004.03.28
Рисование


3-1077861338
Yad
2004-02-27 08:55
2004.03.28
Системное время сервера




   Наверх