建立SDI项目,想用CMenu类建立如下菜单,如何在绘图子菜单下插入直线和矩形选项?
工具|文件|编辑|...
 |
绘图|
    |
    |__直线
    |
    |__矩形
以下是我完成的部分代码,希望高手帮忙指点。
在InitInstance()函数中添加如下代码:
    CMenu* pMainMenu=m_pMainWnd->GetMenu();
    CMenu popmenu;
    popmenu.CreatePopupMenu();
    pMainMenu->InsertMenu(0,MF_BYPOSITION|MF_STRING|MF_POPUP,UINT(popmenu.m_hMenu),"工具");
    popmenu.Detach();
    CMenu* pSubMenu=pMainMenu->GetSubMenu(0);
    pSubMenu->AppendMenu(MF_STRING,IDM_TOOL_DRAW,"绘图");
    /////////////////如何插入直线和矩形两个选项?    m_pMainWnd->DrawMenuBar();

解决方案 »

  1.   

    直接用资源编辑器和CLASSWIZARD不是很方便嘛
      

  2.   

    GetSubMenu得到绘图的CMenu*
    InsertMenu插到相应的位置
      

  3.   

    CMenu* pMainMenu=m_pMainWnd->GetMenu();
        CMenu popmenu;
        popmenu.CreatePopupMenu();
        pMainMenu->InsertMenu(0,MF_BYPOSITION|MF_STRING|MF_POPUP,UINT(popmenu.m_hMenu),"工具");
        popmenu.Detach();
        CMenu* pSubMenu=pMainMenu->GetSubMenu(0);
    CMenu popmenu2;
    popmenu2.CreatePopupMenu();
    pSubMenu->InsertMenu(0,MF_BYPOSITION|MF_STRING|MF_POPUP,UINT(popmenu2.m_hMenu),"绘图");
    popmenu2.Detach();
        /////////////////如何插入直线和矩形两个选项?
    CMenu* pSubMenu2=pSubMenu->GetSubMenu(0);
    pSubMenu2->AppendMenu(MF_STRING,1001,"直线");
    pSubMenu2->AppendMenu(MF_STRING,1002,"矩形");
        m_pMainWnd->DrawMenuBar();
      

  4.   

    seu07201213你好:
         试了你的代码,编译链接通过,但运行不通过啊!
      

  5.   

    seu07201213你好:
         试了你的代码,编译链接通过,运行也通过!,刚才是我不小心粘贴代码时发生错误了。
    谢谢您。