如何在,关闭对话框右上角“X”时,加入自己的语句?
退出程序时,如果用户点击OnCancel或OnOk,都可以在对应的事件中添加语句,但是如果用户点击对话框右上角“X”时,该怎么处理阿。

解决方案 »

  1.   

    void CXXXXDlg::OnSysCommand(UINT nID, LPARAM lParam)
    {
    if ((nID & 0xFFF0) == IDM_ABOUTBOX)
    {
    CAboutDlg dlgAbout;
    dlgAbout.DoModal();
    }
    else if ((nID & 0xFFF0) == SC_CLOSE)
    {
    //你自己的代码
    }
    else
    {
    CDialog::OnSysCommand(nID, lParam);
    }
    }
      

  2.   

    简单的可以使用ClassWizard,添加
    WM_ClOSE 消息的响应函数,
    在CDialog::OnClose()前面添加你的代码就行了
      

  3.   

    基于对话框的程序,找不到OnSysCommand阿