一、方法一:通過找到主窗口的句柄,然後向主窗口發送消息
//該函數用來實現對軟件系統的退出
void CMainFrame::OnExitSystem()
{
// TODO: Add your command handler code here
if (MessageBox("確定退出系統嗎?","提示",MB_YESNO | MB_DEFBUTTON2) == IDYES)
{
//獲取當前主窗口的句柄,向主窗口發送WM_CLOSE消息
::PostMessage(AfxGetMainWnd()->GetSafeHwnd(),WM_CLOSE,0,0);
}
}
方法二:直接獲執行前窗口的OnClose()函數,實現系統的關閉
//該函數用來實現對軟件系統的退出
void CMainFrame::OnExitSystem()
{
// TODO: Add your command handler code here
if (MessageBox("確定退出系統嗎?","提示",MB_YESNO | MB_DEFBUTTON2) == IDYES)
{
CFrameWnd::OnClose();
}
}
二、VC中常用的幾個關閉窗口和退出系統的語句
)OnOK()或OnCancel()只對窗口程序有用
2)PostQuitMessage(0);//最常用
3)exit(1);//據說已經不常用了
4)ExitProcess(0);
5)SendMessage(WM_CLOSE);
6)((CMainFrame*)AfxGetMainWnd())->SendMessage(WM_CLOSE);