2个回答
展开全部
思路是这样的,先在资源面板里添加一个menu资源,编辑成自己想要的,完成以后在需要右键单击触发的地方添加右键单击事件,代码里写入弹出这个menu
CMenu m,*pm;
if(!m.LoadMenu(IDR_MENU1)) MessageBox(_T("err"));//IDR_MENU1是相应的资源id
pm=m.GetSubMenu(0); //获取子对话框
CPoint pot;
GetCursorPos(&pot);//获取鼠标当前位置
pm->TrackPopupMenu(TPM_LEFTALIGN,pot.x,pot.y,this);//在鼠标位置弹出菜单
注意,上面的pm是获取的是第一个主menu项下的子menu,比如设计menu资源的时候主menu从左到右是1,2,3,其中1下面又添加了4,5,6
那么这个程序弹出的menu就是4,5,6
自己建个工程体会一下就知道了
CMenu m,*pm;
if(!m.LoadMenu(IDR_MENU1)) MessageBox(_T("err"));//IDR_MENU1是相应的资源id
pm=m.GetSubMenu(0); //获取子对话框
CPoint pot;
GetCursorPos(&pot);//获取鼠标当前位置
pm->TrackPopupMenu(TPM_LEFTALIGN,pot.x,pot.y,this);//在鼠标位置弹出菜单
注意,上面的pm是获取的是第一个主menu项下的子menu,比如设计menu资源的时候主menu从左到右是1,2,3,其中1下面又添加了4,5,6
那么这个程序弹出的menu就是4,5,6
自己建个工程体会一下就知道了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询