2009-04-14 93 views
1

我正在使用多個頂級窗口應用程序。主窗口是一個MDIFrameWnd,我在CWinApp中放置了一些代碼來在切換頂層窗口時切換m_pMainWnd。它工作正常,但在關閉主窗口之一時觸發斷言。這聲明來自CMDIChildWnd:在多個頂級窗口中使用MFC MDI

void CMDIChildWnd::AssertValid() const 
{ 
    CFrameWnd::AssertValid(); 
    ASSERT(m_hMenuShared == NULL || ::IsMenu(m_hMenuShared)); 
} 

它看起來像窗口被關閉釋放共享菜單。我嘗試找出菜單在MFC框架中的位置,但找不到它。有人能幫助我嗎? 謝謝..

回答

1

我發現問題是。主框架中的菜單欄控件將在其dtor中顯示菜單。感謝大家。

1

CMultiDocTemplate類對共享菜單具有所有權(它在其析構函數中銷燬m_hMenuShared)。

相關問題