使对话框上的关闭按钮失效
来源:互联网 发布:淘宝网店交易网 编辑:程序博客网 时间:2024/06/10 17:36
[问题提出]
有很多网友提出如何使小X的功能不好使.下面就说一下.
[解决方法]
用两种解决方法:
1)重载OnClose();
2)很有意思的方法:这个小X是系统菜单的一部分,所以只要获得此系统菜单的句柄,改变菜单属性即可.
[程序实现]
假设你已有了名为My的对话框工程.
1)建立WM_CLOSE消息的相应函数:
void CMyDlg::OnClose()
{
// TODO: Add your message handler code here and/or call default
// CDialog::OnClose();//将这句注释掉.
}
2)通过CWnd::GetSystemMenu得到句柄,再通过CMenu::ModifyMenu或CMenu::EnableMenuItem(参数已在菜单中讲过)函数改变系统菜单的属性.
a)CWnd::GetSystemMenu配合CMenu::ModifyMenu:
BOOL CMyDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
CMenu *mnu=this->GetSystemMenu(FALSE);
mnu->ModifyMenu(SC_CLOSE,MF_BYCOMMAND|MF_GRAYED);
return TRUE; // return TRUE unless you set the focus to a control
}
b)CWnd::GetSystemMenu配合CMenu::EnableMenuItem:
BOOL CMyDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
CMenu *mnu=this->GetSystemMenu(FALSE);
mnu->EnableMenuItem(SC_CLOSE,MF_BYCOMMAND|MF_GRAYED);
return TRUE; // return TRUE unless you set the focus to a control
}
运行一下看看.
- 使对话框上的关闭按钮失效
- VC窗体上的关闭按钮失效
- AlertDialog弹出的对话框让点击其他按钮关闭对话框失效,而通过代码控制关闭。
- 使Dialog的关闭按钮失效
- 使Dialog的关闭按钮失效
- vc编程使excel的关闭按钮失效的方法
- 创建一个只能由对话框上按钮的点击事件关闭的对话框
- 如何让窗体的关闭按钮失效
- Android——点击对话框上按钮不关闭对话框
- Android——点击对话框上按钮不关闭对话框
- Android——点击对话框上按钮不关闭对话框
- Android——点击对话框上按钮不关闭对话框
- c# winform 让Form窗体上系统自带的红色关闭按钮失效,点击关闭变为最小化
- c# winform 让Form窗体上系统自带的红色关闭按钮失效,点击关闭变为最小化
- 点击子对话框的关闭按钮不起作用
- MFC取消对话框的关闭按钮
- 如何禁止对话框关闭按钮和浮动工具条上的系统菜单
- Android实现点击AlertDialog上按钮时不关闭对话框的方法
- [译文]使用VBA-SDL-H寻找图片
- 简单的ALV控件实例
- 千万不要错过云计算兴起的时代
- vc2005中文版打不上断点解决方法
- 写写博客,送JAVA图书了
- 使对话框上的关闭按钮失效
- 留言时代
- MySQL DBA 管理常用命令
- C#数字逆向螺旋
- 中国移动号码手机开机以及注册gprs流程(转载)
- 正则表达式读书笔记
- silverlight上传文件
- mysql自带压力测试工具:mysqlslap taobao dba团队
- TreeView(树杈视图)