如何禁用 MFC 应用程序在按 ESC 或 ALTF+F4 时退出?
Posted
技术标签:
【中文标题】如何禁用 MFC 应用程序在按 ESC 或 ALTF+F4 时退出?【英文标题】:How to disable that an MFC application exits on pressing ESC or ALTF+F4? 【发布时间】:2010-03-04 09:25:27 【问题描述】:我有一个 MFC 应用程序,我不想在运行期间关闭它。我已禁用右上角的“X”图标,但现在如果我按 ESC 键或 ALT+F4 它仍然会关闭。
如果有人按下这些键,我怎样才能禁用它,这样它就不会关闭?程序完成运行后,我想重新启用它们。
谢谢, 坎皮
【问题讨论】:
【参考方案1】:如果您处理了WM_CLOSE
消息并将其丢弃。 (即不要打电话给DefWindowProc
),那么窗口就不会关闭。
您还可以使用CS_NOCLOSE
样式注册窗口类,以禁用所有关闭窗口的正常方式。
【讨论】:
【参考方案2】:不能说 Esc 键,但就 Alt+F4 而言,它将关闭命令发送到主窗口。您基本上需要覆盖 OnClose 事件并将其保留为空(而不是调用基本方法)。这应该可以解决问题。
附:由于我已经很多年没有接触过 MFC,所以它可能不是 100% 正确的。就是我记得的样子。
【讨论】:
以上是关于如何禁用 MFC 应用程序在按 ESC 或 ALTF+F4 时退出?的主要内容,如果未能解决你的问题,请参考以下文章