如何禁用窗口关闭按钮在一个 MFC 多文档界面 (MDI) 应用程序
来源:互联网 发布:为交换机端口分配vlan 编辑:程序博客网 时间:2024/05/08 09:56
在某些情况下可以防止用户单击关闭按钮以关闭 MFC 应用程序中的框架窗口的窗口的标题栏中。 关闭按钮可以删除删除在 WS_SYSMENU 样式从帧窗口。 但是,此的 Minimize 最大化,和还原按钮也删除,并且无法添加。 这是 Windows 的设计的依据。
要解决此限制,可以通过禁用关闭按钮来模拟没有关闭按钮在窗口的功能。 在 WM_CREATE 消息处理程序中的 MDI 子框架窗口 (CMDIChildWnd 派生类) 禁用在关闭按钮使用下面的代码:
CMenu *pSysMenu = GetSystemMenu(FALSE);ASSERT(pSysMenu != NULL);VERIFY(pSysMenu->RemoveMenu(SC_CLOSE, MF_BYCOMMAND));
子框架窗口未处于最大化时, 以上代码禁止用户通过单击关闭按钮关闭子框架窗口。 当子框架窗口最大化时以上代码将使显示禁用关闭按钮。 但是,用户仍然可以通过单击此窗口关闭按钮关闭子框架窗口。 可以通过它发送到子框架窗口时捕获 SC_CLOSE 命令并阻止此命令的进一步处理阻止这。 为此这一点,请使用 WM_SYSCOMMAND 消息处理程序为下面的示例中的子框架的类:
// CChildFrame is a CMDIChildWnd-derived class.void CChildFrame::OnSysCommand(UINT nID, LPARAM lParam){ if(nID == SC_CLOSE) return; CMDIChildWnd::OnSysCommand(nID, lParam);}
- 如何禁用窗口关闭按钮在一个 MFC 多文档界面 (MDI) 应用程序
- 判断多文档应用程序的MDI子窗口全部关闭
- 如何禁用MFC单文档主窗口的最大化按钮?
- 在C++/MFC框架应用程序里,当浮动工具条被拖离主窗口后,一般都有一个“关闭”按钮,
- MFC MDI在CFormView中当前关闭窗口的代码
- 如何防止一个MDI应用程序在启动时打开一个新(空)文档?(新)
- QtCreator 应用程序主窗口---多文档QMdiArea(MDI多文档界面的区域),QDockWidget(Dock部件),QStatusBar(状态栏)
- 多文档界面(MDI)
- [WPF疑难]如何禁用窗口上的关闭按钮
- WPF中如何禁用/去除窗口右上角的关闭按钮
- WPF中如何禁用/去除窗口右上角的关闭按钮
- MFC MDI项目如何一个文档显示多个不同视图类(比如文字和图表,各自拥有单独的框架窗口)
- 在mfc编程中,创建多文档应用程序时,如何关闭启动时自动打开的空文档
- C#_ACCP_Windows_创建多文档界面应用程序MDI
- [Windows应用程序]怎样建立winForm多文档窗口MDI
- MFC如何在有界面的应用程序中开启控制台窗口
- MDI如何关闭指定子窗口
- 禁用窗口的关闭按钮方法
- PreTranslateMessage()函数截获鼠标键盘消息
- 算法学习建议(转)
- Windows下多串口的配置与使用
- Want to be a computer scientist? Forget maths
- 使用StretchBlt之前一定要用SetStretchBltMode(COLORONCOLOR)
- 如何禁用窗口关闭按钮在一个 MFC 多文档界面 (MDI) 应用程序
- 添加菜单栏自绘按钮
- 让ARM开发板上SD卡里的程序开机自动运行
- WinCE 应用程序开机自动运行的又一种方法
- WinCE下文件的路径
- A little operating system named marry!
- MFC如何高效的绘图
- evc vc字符串转换处理
- EVC数据转换处理及其他