怎么捕获对话框右上角x关闭按钮事件

2024-12-26 13:04:56
推荐回答(4个)
回答1:

用这个:LRESULT CMy011225D00Dlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam) { // TODO: Add your specialized code here and/or call the base class switch(message) { case WM_SYSCOMMAND: if(wParam==SC_CLOSE) { TRACE("处理系统命令\n"); MessageBox("关闭按钮"); return 0; } break; } return CDialog::WindowProc(message, wParam, lParam);}

回答2:

响应的是这个函数……void CDlgDlg::OnSysCommand(UINT nID, LPARAM lParam){ if ((nID & 0xFFF0) == IDM_ABOUTBOX) { CAboutDlg dlgAbout; dlgAbout.DoModal(); } else { CDialog::OnSysCommand(nID, lParam); // <---这个 }}在else 之前加上 你对X 的处理函数就可以了。对了,消息是SC_CLOSE Close the CWnd object.其他 的消息请参见 CWnd::OnSysCommand

回答3:

OnSysCommand 中处理SC_CLOSE

回答4:

x关闭按钮是如何关闭程序的,请详细说明