我在一个MFC程序中建立一个对话框,让它弹出后用户无法取消它(除非点击“确定”按扭)。
包括
1、取消ESC键的操作。
2、取消对话框右上角的小叉。
3、把“取消”按扭变灰(不可用)。我知道可以直接修改资源文件,达到2和3的目的,但我需要的是在程序中判断是不是需要让用户不能取消对话框,所以需要用代码来实现2和3。
请大家教教我,谢谢了。(鞠躬)
包括
1、取消ESC键的操作。
2、取消对话框右上角的小叉。
3、把“取消”按扭变灰(不可用)。我知道可以直接修改资源文件,达到2和3的目的,但我需要的是在程序中判断是不是需要让用户不能取消对话框,所以需要用代码来实现2和3。
请大家教教我,谢谢了。(鞠躬)
解决方案 »
- VC不同版本的DLL之间互调的问题?
- 最最基本的问题.static Ctest *gp_test = 0;
- 用CreateWindow()创建了一个ToolTip窗口
- 一个select的问题,谢谢
- 关于DLL?
- MFC 在调用AQLFethScroll/SQLExtendedFetch之前没有绑定数据列
- ●Windows资源管理器的问题∶右边的窗口如何设定,使其一打开时,文件列表就以”详细”显示,而不是以大图标显示?●
- 高手指叫——问题
- C++大学教程中第9章类的例子的一个问题
- 怎么让程序能在GUI和CUI环境下都能运行?
- PBM图片显示的问题?高手请进!
- 如何给一个窗口发一个模拟按键alt的消息?或者用什么函数?
好像是
ModifyStyle
ModifyStyleEx
{
// TODO: Add your specialized code here and/or call the base class
if(pMsg->message==WM_KEYDOWN && pMsg->wParam==VK_ESCAPE) return TRUE;
if(pMsg->message==WM_KEYDOWN && pMsg->wParam==VK_RETURN) return TRUE;
else
return CDialog::PreTranslateMessage(pMsg);
}
函数不做任何处理GetDlgItem(IDCANCEL)->EnableWindow(FALSE);
2、modifystyle
3、getdlgitem、enablewindow
但是PreTranslateMessage无法捕获ATL键,ALT+F4还是可以关闭 对话框,
不过还是给分了,谢谢大家。