鼠标点击对话框右上角的×的时候,有时候,在有些状态下不想让对话框关闭。
不知道这个应该怎么做
我试着重载了OnDestroy消息函数,但发现不行
不知道这个应该怎么做
我试着重载了OnDestroy消息函数,但发现不行
解决方案 »
- mfc中,参数传递中 HWND 与 CWnd* 哪个更好一些?
- 奇怪现象|怎么解释
- 关于键盘模拟鼠标出现的问题!!
- 熟悉换肤技术的朋友请进......
- 请问可不可以在MFC DLL中导出基于CWnd的类?how ?
- 各位新手老手,牛刀小试一下,看看以下语句执行后,s将是什么样的结果。千万不要调试哦,试试自己的知识
- 希望确认一个有关DLL跨进程共享数据的问题
- 在线程中创建显示对话框为什么出错?
- 字符串问题
- 关于这个函数CreateFontIndirect()
- 串口通信时能否通过一个端口与一两个单片机相连接进行通信?
- 如何获取其他控制台窗口的输出以及设置其输出buffer大小(win2000环境)
;
但最好是在不允许用户关闭对话框的状态下把关闭按钮disable掉,不然用户会疑惑:
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
pSysMenu->EnableMenuItem(SC_CLOSE, MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);
}
但重载WM_CLOSE消息更简单
->Edit Existing
这样就可以处理WM_CLOSE消息了,如下所示://点击右上角的X,在关闭前询问;
void CFiveCannon5Dlg::OnClose()
{
if(MessageBox("真的要退出吗?","友情提示:",MB_OKCANCEL|MB_ICONQUESTION)==IDOK)
CDialog::OnClose();
}