我做的是一个多文档浏览器,然后在mainframe类中的OnCreat()函数中,我想获取主框架的菜单中“收藏”这一菜单项:m_pMenu =GetMenu()->GetSubMenu(3);
    然后就遇到了个问题:只要是有一个或多个子窗口打开着,那么点击“收藏”后却什么收藏内容也没有,然后关闭所有子窗口,再点“收藏”那么所有的收藏的内容就都出来了。这是为什么呢。
    (我认为在打开子窗口的时候点击“收藏”弹出来的菜单是子窗口的菜单,但不知道怎么解决。)

解决方案 »

  1.   

    如果是你认为的问题的话  
    那就做成一个菜单 
     就是主窗口和子窗口共用一个菜单
    添加如下代码
    int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 
    {
    if (CMDIChildWnd::OnCreate(lpCreateStruct) == -1)
    return -1;
    if(lpCreateStruct->hMenu)   
     {   
                  lpCreateStruct->hMenu=NULL;   
                  DestroyMenu(lpCreateStruct->hMenu);   
                  SetMenu(NULL);   
     }
    // TODO: Add your specialized creation code here

    return 0;
    }删除资源里子窗口的 菜单ID