Go Back   Armenian Knowledge Base > Technical sections > Languages, Compilers, Interpreters

Reply
 
Thread Tools

Вопрос к знатокам MFC
Old 29.08.2002, 19:31   #1
Школьник
 
Join Date: 05 2002
Location: Yerevan
Posts: 202
Rep Power: 0
Post Вопрос к знатокам MFC

Значится так:

имеем Dialog-based application
в нем всего один СEdit и одна кнопка

необходимо
в процессе работы приложения перехватывать все клавиши, то есть когда окно открыто то ни одна системная клавиша работать не должна, я имею в виду например клавишу WIN

Если с клавишами альт-ф4 и эскейп все решается просто - ставится обработчик на события OnClose и OnDestroy, то со всем остальным сложно. Обработчик OnKeyDown на основной форме работает только когда у меня нету CButton, в противном случае сообщение не ловится, так как фокус стоит на этой кнопке....

В общем, если запутанно объяснил, прошу прощения, если что - могу уточнить....
__________________
This game has no name,
It will never be the same....

Old 29.08.2002, 20:58   #2
Грустно...
 
Agregat's Avatar
 
Join Date: 08 2002
Location: Там, где всегда идут дожди
Age: 43
Posts: 21,717
Rep Power: 9
Post

Советую перехватывать PreTranslateMessage()
там смотришь

if (msg->message == WM_KEYDOWN)
{
//тута смотришь все свои параметры и если не хочешь обраратывать возвращаешь FALSE, по моему
посмотри в MSDN.
}
__________________
http://аvitya.livejournal.com
Хотели, как лучше, а получилось даже хуже...
Лозунг шахматиста: На каждый шах - ответим матом!

Old 30.08.2002, 00:07   #3
Академик
 
W_z_rd's Avatar
 
Join Date: 08 2002
Location: Yerevan, Armenia
Age: 53
Posts: 4,854
Rep Power: 5
Post

Chto znachit - okno otkrito ? Nado potochnee formulirovat` zadachu. Esli okno otkrito i aktivno ? Togda - PreTranslate, kak bilo skazano, a esli prosto otkrito - togda tol`ko hook na klaviaturu.
__________________
Женщин не надо понимать, их надо любить!

Old 30.08.2002, 02:47   #4
Школьник
 
Join Date: 05 2002
Location: Yerevan
Posts: 202
Rep Power: 0
Post

Спасибо за ответ.... Попробую, посмотрим что получится...
__________________
This game has no name,
It will never be the same....
Reply




Реклама:
реклама
Buy text link .

All times are GMT. The time now is 02:52.
Top

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.