【发布时间】:2017-04-08 11:04:11
【问题描述】:
我有一个基于对话框的 MFC 应用程序,我只想使用标题栏中给出的 X(关闭)按钮并禁用其他快捷方式来关闭/终止它。
例如:按 Esc 键。有人可以帮忙吗?
【问题讨论】:
标签: c++ mfc modal-dialog terminate
我有一个基于对话框的 MFC 应用程序,我只想使用标题栏中给出的 X(关闭)按钮并禁用其他快捷方式来关闭/终止它。
例如:按 Esc 键。有人可以帮忙吗?
【问题讨论】:
标签: c++ mfc modal-dialog terminate
重写 PreTranslateMessage 函数并捕获使用 VK_ESCAPE 来捕获 Esc 键。类似的方式,您可以捕获其他消息并绕过关闭对话框
BOOL CMyDialog::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message == WM_KEYDOWN)
{
if ((pMsg->wParam == VK_RETURN) || (pMsg->wParam == VK_ESCAPE))
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}
【讨论】: