我自己在一个SDI文档中用menuPopup.LoadMenu(IDR_MYCONTEXT) 添加了一个菜单,没有问题。能正常运行。现在我想在这个后面再添加一个菜单项。我是这样做的
CMenu menuPopup;
menuPopup.LoadMenu(IDR_MYCONTEXT)
//=============这里以后就不会了======================================================
CMenu *menuAdd=new CMenu();
menuAdd->CreateMenu ();
menuAdd->AppendMenu(MF_SEPARATOR);
menuAdd->AppendMenu (MF_STRING,ID_MENU_RED,"&Red"); HMENU hmenu =menuAdd->GetSafeHmenu();//得到动态菜单的HMENU
if(hmenu)
AfxMessageBox("ERROR");
menuPopup.Attach (hmenu);//将动态菜单添加到原来菜单的后面
menuPopup.Detach();
menuAdd->Detach ();
menuPopup.TrackPopupMenu (TPM_LEFTALIGN,point.x,point.y ,this);
刚学VC++不久。希望回答,谢谢=_= 这可能实现吗?生成的时候没有错误,一点右键就出错了。请问该怎么样才能实现?
CMenu menuPopup;
menuPopup.LoadMenu(IDR_MYCONTEXT)
//=============这里以后就不会了======================================================
CMenu *menuAdd=new CMenu();
menuAdd->CreateMenu ();
menuAdd->AppendMenu(MF_SEPARATOR);
menuAdd->AppendMenu (MF_STRING,ID_MENU_RED,"&Red"); HMENU hmenu =menuAdd->GetSafeHmenu();//得到动态菜单的HMENU
if(hmenu)
AfxMessageBox("ERROR");
menuPopup.Attach (hmenu);//将动态菜单添加到原来菜单的后面
menuPopup.Detach();
menuAdd->Detach ();
menuPopup.TrackPopupMenu (TPM_LEFTALIGN,point.x,point.y ,this);
刚学VC++不久。希望回答,谢谢=_= 这可能实现吗?生成的时候没有错误,一点右键就出错了。请问该怎么样才能实现?
CMenu::AppendMenu
去查查msdn,看看CMenu的那些成员函数
我用的时候直接就menuPopup.AppendMenu(MF_STRING,ID_MENU_RED,(LPCTSTR)"&Red");了。谢谢你!