最近在做一个MDI的程序,场景如下:最外层窗体的Frame是CMainFrame,CMainFrame的菜单内有两个选项,设计意图是点击选项1时弹出子窗体1,子窗体1的Frame是CMyFrame1,同时定义了属于这个frame的菜单IDR_MENUTYPE1;弹出子窗体1的同时,子窗体1的菜单覆盖mainframe的菜单。点击选项一时调用的函数如下:
void CMainFrame::OnOpenSearchMgtWnd()//打开搜索窗口
{

this->m_pCamSearchMgtFrm = new CCamSearchMgtFrm;
this->m_pCamSearchMgtFrm->Create(NULL,_T("搜索和管理"),WS_CHILD | WS_VISIBLE | WS_OVERLAPPEDWINDOW|WS_SYSMENU, rectDefault); this->m_pCamSearchMgtFrm->ShowWindow(SW_SHOW);
this->m_pCamSearchMgtFrm->UpdateWindow();
this->UpdateWindow();
}结果发现子窗体的菜单并没有覆盖mainFrame的菜单,请问应该如何修改代码??

解决方案 »

  1.   

    http://ruson523.blog.163.com/blog/static/3774855020071122521142/也就是动态修改菜单了!
      

  2.   

    http://q1q2q3q4q5q6ln.blog.163.com/blog/static/50079433201052301756878/?fromdm&fromSearch&isFromSearchEngine=yes
     这个更详细一些!
      

  3.   

    用CWinApp::FileNew函数创建的子窗口,子窗口的菜单可以正确显示,为什么用1楼代码创建的子窗口就不显示子窗口菜单呢?