void CMainFrame::OnClose() { if(AfxGetModuleManager()) if(!AfxGetModuleManager()->IsCanDestroy()) return;//программа не разрешила закрывать if(AfxGetMetadataTree()) if(AfxGetMetadataTree()->GetParent()) { afxExitMode=1; AfxGetMetadataTree()->SaveOpenModulesState(); //AfxGetMetadataTree()->GetParent()->BringWindowToTop(); } CMDIChildWnd* pChild; while(pChild=MDIGetActive()) { pChild->SendMessage(WM_CLOSE); if(pChild==MDIGetActive()) return;//была нажата кнопка ќтмена } afxExitMode=0; pMessageWindow=0; pStatusBar=0; // m_MDIClient.SaveMainFrameState(); CMDIFrameWnd::OnClose(); }
void CReClass2015App::OnButtonReset() { CMDIFrameWnd* pFrame = (CMDIFrameWnd*)AfxGetApp()->m_pMainWnd; CMDIChildWnd* wnd = pFrame->MDIGetActive(); while(wnd) { wnd->SendMessage(WM_CLOSE,0,0); wnd = pFrame->MDIGetActive(); } Classes.clear(); Header = ""; Footer = ""; Notes = ""; tdHex = "char"; tdInt32 = "__int32"; tdInt16 = "__int16"; tdInt8 = "__int8"; tdDWORD = "DWORD"; tdWORD = "WORD"; tdBYTE = "BYTE"; tdVec2 = "D3DVECTOR2"; tdVec3 = "D3DVECTOR3"; tdQuat = "D3DXQUATERNION"; tdMatrix = "D3DMATRIX"; CurrentFilePath = ""; }
void CXTPMDIWndTab::OnTabClose() { if (m_pMDIFrameWnd) { CMDIChildWnd* pActiveChild = (CMDIChildWnd*)m_pMDIFrameWnd->MDIGetActive(); if (pActiveChild != NULL) { pActiveChild->SendMessage(WM_CLOSE); } } }
//**************************************************************************************** void CBCGPToolbarSystemMenuButton::OnDblClick (CWnd* pWnd) { if (CBCGPToolBar::IsCustomizeMode ()) { return; } ASSERT (pWnd != NULL); ////////////////////////////////////////////// // Make sure to close the popup menu and // find the MDI frame correctly. //-------------------------------------------- OnCancelMode (); CFrameWnd* pParentFrame = BCGPGetParentFrame (pWnd); if(pParentFrame != NULL && pParentFrame->IsKindOf (RUNTIME_CLASS (CMiniDockFrameWnd))) { pParentFrame = (CFrameWnd*) pParentFrame->GetParent (); } CMDIFrameWnd* pMDIFrame = DYNAMIC_DOWNCAST (CMDIFrameWnd, pParentFrame); if (pMDIFrame != NULL) { CMDIChildWnd* pChild = pMDIFrame->MDIGetActive (); ASSERT_VALID (pChild); BOOL bCloseIsDisabled = FALSE; CMenu* pSysMenu = pChild->GetSystemMenu (FALSE); if (pSysMenu != NULL) { MENUITEMINFO menuInfo; ZeroMemory(&menuInfo,sizeof(MENUITEMINFO)); menuInfo.cbSize = sizeof(MENUITEMINFO); menuInfo.fMask = MIIM_STATE; pSysMenu->GetMenuItemInfo (SC_CLOSE, &menuInfo); bCloseIsDisabled = ((menuInfo.fState & MFS_GRAYED) || (menuInfo.fState & MFS_DISABLED)); } if (!bCloseIsDisabled) { pChild->SendMessage (WM_SYSCOMMAND, SC_CLOSE); } } //-------------------------------------------- ////////////////////////////////////////////// }