| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > Перехват сообщений дочерних окон |
| Автор: User008 29.8.2010, 22:00 |
| Нужно сделать обработку нажатия клавиш, но её нажатие посылается фокусированному контролу. Как сделать, чтобы независимо от выделенного контрола, обрабатывалось событие? |
| Автор: Earnest 30.8.2010, 15:41 |
| Стандартное место для этого - PreTranslateMessage родительского окна. Лови WM_KEYDOWN, проверяй фокус (или не проверяй, если всегда-всегда, но тогда редакторы работать не будут) и вперед. Логично связать команды с клавишами в таблицу акселераторов, тогда нужно будет просто вызвать TranslateAccelerator(). Но можно и руками проверять что за клавиша и какую команду выполнить. |