mfc 右键菜单

guicaizhou 2011-05-23 02:46:01
//获取位置
CPoint MousePoint;
GetCursorPos(&MousePoint);
//构造菜单
CMenu CtrlMenu;
CtrlMenu.CreatePopupMenu();
CtrlMenu.AppendMenu(MF_ENABLED, IDC_LIST1, TEXT(" 修 改 "));
CtrlMenu.AppendMenu(MF_ENABLED, IDC_LIST1, TEXT(" 测 试 "));

CtrlMenu.TrackPopupMenu(TPM_LEFTALIGN|TPM_LEFTBUTTON, MousePoint.x, MousePoint.y, this);

如何判断我点击的是修改还是测试?
...全文
98 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
游牧小小诗人 2011-05-23
  • 打赏
  • 举报
回复
MFC 消息映射表是通过ID号来确认对应ID所对应的处理函数,你两个一样的ID,在单击的时候产生的消息都是一个ID号,所执行的函数是同一个,无法认出来~~~深入浅出MFC的第9章讲的就是这个~~可以去翻下电子书~~
guicaizhou 2011-05-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ycf8788 的回复:]
菜单响应的也是OnCommand消息, 你的ID号可以自己到RC文件里面定义,如果不熟的话,建议还是用系统生成的来做吧
[/Quote]
貌似有点懂了
不二星空 2011-05-23
  • 打赏
  • 举报
回复
菜单响应的也是OnCommand消息, 你的ID号可以自己到RC文件里面定义,如果不熟的话,建议还是用系统生成的来做吧
guicaizhou 2011-05-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 pppp23 的回复:]
为什么不建立一个菜单,修改和测试都是子菜单
[/Quote]

弄着玩的
guicaizhou 2011-05-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 kyotrue 的回复:]
ID就是用来判断的,你两个都是IDC_LIST1当然判断不出来了。。。
[/Quote]

IDC_LIST1 必须是界面控件的ID吗
pppp23 2011-05-23
  • 打赏
  • 举报
回复
为什么不建立一个菜单,修改和测试都是子菜单
yao050421103 2011-05-23
  • 打赏
  • 举报
回复
你这样写没办法区分的吧?把两个菜单的ID都设为IDC_LIST1,添加消息响应都跑到一个入口点了。
弄成不同的ID就OK了。
kyotrue 2011-05-23
  • 打赏
  • 举报
回复
ID就是用来判断的,你两个都是IDC_LIST1当然判断不出来了。。。

15,978

社区成员

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

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