MFC向导生成的ABOUTBOX,怎么取消掉ESC键的关闭功能 在用MFC向导生成的关于对话框,显示的时候,只要按一下ESC键就能让它关闭,我要怎么才取消这个功能呢?即按ESC键没有反应。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 重载对话框的OnOk()和OnCancel()将CDialog::OnOk();或CDialog::OnCancel()注释掉.这样的问题已经出现过不知多少次了,请楼主先看一看置顶帖子! MSG msg;// 检查是否按下 Escape 键if (::PeekMessage(&msg, m_hWnd, WM_KEYFIRST,WM_KEYLAST, PM_REMOVE)) { if (msg.message == WM_KEYDOWN && msg.wParam == VK_ESCAPE)// 退出循环或者停止处理;} 同意 zhucde(【风间苍月】) 那其他时候建产的对话框,没有去重写CDialog::OnOk();或CDialog::OnCancel()那个方法。确又不能按ESC键关闭啊。 BOOL CCXXX::PreTranslateMessage(MSG* pMsg) { if(pMsg->message == WM_KEYDOWN) { switch(pMsg->wParam) { case VK_ESCAPE: //屏蔽Esc return TRUE; } } return CDialog::PreTranslateMessage(pMsg); } 问题已解决,我平庸的重写了OnCancle方法 非模态对话框的问题 动态创建Webbrowser控件问题 为何在MFC编辑框中输入数据后再打回车就结束了? 如何控制Office在保存文件时禁止用"c:\a.abc"这种方式来保存 能否用同一端口与不同服务器建立TCP连接? 关于进程间通讯的问题? ocx控件注册问题 如何在VC中实现自动增加程序的版本号 DLL是不是进程内COM服务器? 维护别人代码时,也要遵守开放闭合原则吗? 鼠标在CListCtrl控件上的精确定位? 数字键与字母键的虚键码是什么。
将CDialog::OnOk();或CDialog::OnCancel()注释掉.这样的问题已经出现过不知多少次了,
请楼主先看一看置顶帖子!
// 检查是否按下 Escape 键
if (::PeekMessage(&msg, m_hWnd, WM_KEYFIRST,WM_KEYLAST, PM_REMOVE))
{ if (msg.message == WM_KEYDOWN && msg.wParam == VK_ESCAPE)
// 退出循环或者停止处理;
}
确又不能按ESC键关闭啊。
{
if(pMsg->message == WM_KEYDOWN)
{
switch(pMsg->wParam)
{
case VK_ESCAPE: //屏蔽Esc
return TRUE;
}
}
return CDialog::PreTranslateMessage(pMsg);
}