Как остановить закрытие приложения mfc диалогового окна нажатием ESC (Escape key). После выполнения моего приложения, если я нажимаю клавишу ESC, окно закрывается. Как это можно остановить? Я использую VC++ 6.0.Как остановить приложение приложения mfc от закрытия нажатием ESC
3
A
ответ
2
Существуют разные способы сделать это. Вы можете:
- Создать OnCancel Handler и делать все, что вы хотите с Отмена уведомления
- Вы можете Handle OnClose событие и делать все, что вы хотите.
- Вы можете переопределить PreTranslateMessage и проверить клавишу Esc там и делать все, что хотите.
Проверьте код this.
Для примера PreTranslateMessage см this
4
Вы можете переопределить событие OnCancel и двигаться только вперед, с вызовом OnCancel если IDCANCEL это целенаправленный элемент.
void CMyDialog::OnCancel(void)
{
if(GetDlgItem(IDCANCEL) == GetFocus())
{
CDialog::OnCancel();
return;
}
}
1
Override OnCancel и не вызываете реализацию базового класса.
Не приближайтесь к OnClose, если вы не знаете, что делаете, вы рискуете нарушить поведение для Alt-F4 и кнопки X.
Я всегда считал PreTranslateMessage для таких вещей, как использование термоядерного оружия, чтобы расколоть орех, но если она плывет лодку ...
Смежные вопросы
- 1. Остановить отладку нажатием клавиши esc
- 2. Как остановить MainWindow от закрытия всего приложения
- 3. Как остановить мой модальный диалог от закрытия нажатием кнопки?
- 4. Остановить приложение для Android от закрытия
- 5. Как остановить QThread от закрытия?
- 6. На момент закрытия приложения: Как остановить поток?
- 7. Сделать окно закрытия ESCAPE (ESC)
- 8. Могу ли я остановить мобильное приложение от закрытия
- 9. Остановить форму от закрытия условно
- 10. Как сделать esc остановить метод
- 11. Java остановить людей от закрытия
- 12. Как остановить Sublime от закрытия групп?
- 13. Как остановить консоль от закрытия при выходе?
- 14. Как остановить a \ от закрытия строки
- 15. Как я могу остановить fancyBox от закрытия?
- 16. Как остановить XPathDocument от закрытия потока?
- 17. Как сохранить Sencha Ext.Msg от закрытия нажатием кнопки
- 18. Stop System.Windows.SplashScreen с WinForms от закрытия приложения
- 19. Как остановить мое быстрое приложение от сбоев
- 20. Остановить приложение от выхода
- 21. Остановка DatePickerDialog от закрытия при использовании нажатием кнопки Set
- 22. Как остановить приложение от выполнения
- 23. JqGrid - очистка фильтров панели инструментов нажатием ESC?
- 24. Приложение Vaadin: событие закрытия дескриптора приложения
- 25. MFC/COM: Предотвращение очистки буфера обмена после закрытия приложения
- 26. остановить скрипт applescript от запуска на клавиатуре ESC
- 27. Как остановить объект нажатием кнопки
- 28. Как остановить toggleClass() нажатием кнопки?
- 29. Как остановить запуск службы после закрытия приложения - андроид
- 30. Остановить сеанс intellisense от преждевременного закрытия
OnClose (назначенный обработчик WM_CLOSE) не вызывается нажатием клавиши Esc. –