我正在使用多个顶级 Windows 应用程序。主窗口是一个 MDIFrameWnd,我在 CWinApp 中放了一些代码来在切换顶层窗口时切换 m_pMainWnd。它工作正常,但是当我关闭其中一个主窗口时触发断言。此断言来自 CMDIChildWnd:
void CMDIChildWnd::AssertValid() const
{
CFrameWnd::AssertValid();
ASSERT(m_hMenuShared == NULL || ::IsMenu(m_hMenuShared));
}
看起来窗口已关闭释放共享菜单。我试图找出在MFC 框架中发布菜单的位置,但找不到。有人可以帮帮我吗? 谢谢..
最佳答案
CMultiDocTemplate 类拥有共享菜单的所有权(它在其析构函数中销毁 m_hMenuShared)。
关于c++ - 使用具有多个顶层窗口的 MFC MDI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/746879/