| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > VK_ESCAPE |
| Автор: Kostik88 7.7.2008, 22:10 |
| Здравствуйте! Ктонибудь может ответить на мой вопрос. У меня есть диалоговое окно, я хочю сделать так чтобы оно закрывалось при нажатии клавиши Esc, как это можно сделать? Я в ф-ции диалога написал обработку сообщения: ...................................... case WM_KEYUP: switch(wParam) { case VK_ESCAPE: EndDialog(hDlg,0); break; } break; Но она не работает, может я чтонибудь не так делаю. 0о Заранее благодарен. |
| Автор: 586 7.7.2008, 22:36 | ||
При нажатии клавиши Escape в диалоговом окне ему придёт сообщение WM_COMMAND IDCANCEL. На Enter - IDOK.
|
| Автор: Kostik88 7.7.2008, 22:38 |
| Честно говоря у меня такая конструкция написанна, но она не реагирует на клавишу Esc. 0o |
| Автор: Kostik88 7.7.2008, 23:50 |
| Может быть это из-за того что у меня немодальный диалог....? Тогда вопрос, как это сделать в немодальном диалоге? |
| Автор: Kostik88 8.7.2008, 00:33 |
| Всё разобрался) Я немного неправильно в WinMain писал обращение к диалогу вот как надо было: while(GetMessage(&msg,NULL,0,0)){ if(!TranslateAccelerator(HWnd,hAccel,&msg)){ if(!IsDialogMessage(hDialog,&msg)){ TranslateMessage(&msg); DispatchMessage(&msg);} } } |