Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Visual C++/MFC/WTL > Отлов нажатия служебной кнопки диалога |
Автор: Dart 8.11.2006, 12:12 |
Здравствуйте народ! Есть диалог, на котором есть собственный контрол Мне надо отловить нажатие кнопок, которые сам диалог обрабатывает (Enter, Tab, Esc, etc) Причем отловить именно в контроле. Что это можно, не сомневаюсь, например Edit прекрасно перехватывает Enter, если его попросить. Но никак не могу найти, где. Т.е. до PreTranslateMessage, а уж тем более до WindowProc и карты сообщений WM_CHAR просто не доходит. Так как это можно сделать? Заранее спасибо |
Автор: Kostt 8.11.2006, 12:40 |
Отлавливай в своем контроле события OnKeyDown или OnKeyUp и проверяй соответствие параметра nChar тому, что хочешь обработать. Что касается Enter и Escape я обычно запрещаю их в своих диалогах, переопределяя методы OnOk() и OnCancel() |
Автор: Dart 8.11.2006, 14:05 |
Kostt, Ну, OnOK и OnCancel переопределять не есть гуд - если юзер честно дощелкает по табу до кнопки ОК и нажмет Enter, его оччень это подивит. Но, собственно, за метод спасибо - KEYDOWN в контрол приходит все таки. (Как сам не догадался ...) |