使用CDialogImpl
派生类作为基于对话框的WTL / ATL应用程序,我想在用户单击右上角的“X”按钮时隐藏主窗口(或按 Esc 或 Alt + F4 )。
目前,“X”关闭对话框并结束应用程序。
我想更改此行为,只有隐藏对话框而不是关闭它。这可能吗?
答案 0 :(得分:2)
我不确定ATL / WTL是否为此提供了一些包装,但是在WinAPI中,您正在寻找的函数是ShowWindow,您可以这样调用它:
ShowWindow(hwnd, SW_HIDE);
如果您希望在应用程序关闭时发生这种情况,则需要处理的邮件是WM_CLOSE。
快速搜索后,MSDN会显示CWindow::ShowWindow,这是我之前提到的包装器。