menu切换

MFC 多文档menu切换

不想你离开。 提交于 2020-11-27 05:22:27
作为一个MFC新手可能不知道怎样切换menu。在网上也很难找到相关资料。 当应用程序向导生成的 SDI 或 MDI 应用程序时,它创建了菜单资源 (使用 IDR_MAINFRAME 作为其资源 id。 此菜单显示在所有时间 SDI 应用程序,并且仅在 MDI 应用程序中没有活动文档时。 对于 MDI 应用程序中,应用程序向导还会生成菜单资源为一个 multidoc 模板创建使用 IDR_xxxxTYPE 作为其资源 id。 附加的菜单资源可供其使用资源编辑器创建和使用另一台 multidoc 模板关联在一起 (见 CMultiDocTemplate)。 该框架将显示与每个 multidoc 模板自动关联的菜单资源。 此方法将限制每个文档模板的一个菜单。 若要避开此限制,可以重写 CDocument::GetDefaultMenu(),并执行一些调用以显示菜单。 MFC 使用 CMDIChildWnd::m_hMenuShared 和 CFrameWnd::m_hMenuDefault 数据成员来确定要显示的菜单。 在 MDI 应用程序,其中每个文档模板关联的菜单资源文档模板构造期间加载并复制到 CMDIChildWnd::m_hMenuShared。 然后在 CMDIChildWnd::OnUpdateFrameMenu() 中使用此菜单时没有活动的 MDI 子窗口设置 MDI