鼠标右击菜单怎么没有显示?

疯狂-的-蜗牛 2011-03-30 05:57:52
我用MFC新建了一个基于对话框的工程,在对话框中添加了一个Rich Edit控件,给这个对话框添加了鼠标右击响应函数,加载菜单项,但是在Edit中鼠标右击并没有显示菜单;于是我又给Rich Edit 控件添加了一个类,基于对话框的;再次加载菜单,仍然没有显示出来。
是不是这个类不应该基于对话框(CDialog)啊?还是我的鼠标右击响应函数错了,麻烦看看了:
CDialog::OnRButtonDown(nFlags, point);
CMenu menu;
CMenu* PMenu;
menu.LoadMenuA(IDR_MENU2);
ClientToScreen( &point );

PMenu= menu.GetSubMenu( 0 );
PMenu->TrackPopupMenu( TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this );
...全文
206 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
疯狂-的-蜗牛 2011-03-30
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 visualeleven 的回复:]
在对话框的PreTranslateMessage中处理
[/Quote]
谢谢你,这样做了就好了。
jixiang1983 2011-03-30
  • 打赏
  • 举报
回复
把RichEdit控件换成Edit试试
Eleven 2011-03-30
  • 打赏
  • 举报
回复
在对话框的PreTranslateMessage中处理
Dreadnought 2011-03-30
  • 打赏
  • 举报
回复

CMenu menu;
CMenu* PMenu;
menu.LoadMenu(IDR_MENU1);
ClientToScreen( &point );
PMenu= menu.GetSubMenu( 0 );
PMenu->TrackPopupMenu( TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this );

你试试以上代码,我在VS2010中运行没问题..

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧