程序代码如下:
CMenu menu;
menu.LoadMenu(IDR_MAINFRAME);
menu.TrackPopupMenu(TPM_RIGHTALIGN|TPM_RIGHTBUTTON,point.x,point.y,this,NULL);
菜单可以正常弹出,但是宽度窄得不正常,菜单项的字体无法显示,求助。

解决方案 »

  1.   

    CMenu menu;
    menu.LoadMenu(IDR_MAINFRAME);
    CMenu *subMenu;
    subMenu = menu.GetSubMenu(0);
    subMenu->TrackPopupMenu(TPM_RIGHTALIGN|TPM_RIGHTBUTTON,point.x,point.y,this,NULL);
      

  2.   

    up!
    关键是GetSubMenu();
      

  3.   

    这样不行,subMenu = menu.GetSubMenu(0)返回值是0,再执行下面一句会非法。
    如果LoadMenu()调用的是IDR_MAINFRAME没有上面的问题,如果load自己画的菜单就不行,疑惑中……
      

  4.   

    如果是自己画个menu那
    在Mesureitem中设定宽度