【问题标题】:I overrided WM_CLOSE, how to came out from application now我覆盖了 WM_CLOSE,现在如何从应用程序中出来
【发布时间】:2013-04-10 05:25:46
【问题描述】:

我是 Windows 编程的新手,我编写了一个带有单个对话框的应用程序。在那之后,我覆盖了 CWnd::OnClose 以在退出应用程序之前做一些事情。之后我需要从应用程序中退出。但是如果我通过重写的方法发布或发送带有 WM_CLOSE 事件的消息,它也会被调用,所以现在如何从应用程序中退出。

class MyDlg : public CDialogEx
{
public:
afx_msg void OnClose();
};

BEGIN_MESSAGE_MAP(MyDlg , CDialogEx)
ON_WM_CLOSE ()
END_MESSAGE_MAP()

void MyDlg:: OnClose()
{
  //what code I should write here to exit from application. 
}

【问题讨论】:

    标签: mfc


    【解决方案1】:

    在你做完你的事情之后写下这个:

    __super::OnClose();
    

    【讨论】:

    • 这里的_super是什么意思,是指主窗口。
    • 这是一个“Microsoft 特定”代码,允许调用基本方法。在标准 c++ 中,您将使用:CDialogEx::OnClose(); Microsoft 为您提供了一个快捷方式。你甚至可以使用Defaut(); - 另一个快捷方式
    猜你喜欢
    • 2022-11-30
    • 1970-01-01
    • 1970-01-01
    • 2020-10-01
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    • 2013-01-04
    相关资源
    最近更新 更多