求证,点击 Menu 会击发两次点击事件

startstartsvip 2012-04-08 10:08:52
我在 C# 里面通过 Win32 api 来 hook 到其他windows窗体,发送信息创建自定义菜单 (就是右键点击 出来的那个)


发现 点击菜单选项,会有两次相同事件 被激发。

求 C++ 兄弟释疑,是不是 c++ 里面 右键菜单,自建选项被点击后 会触发两次相同事件


最好有测试码




--------------------------------------------------------------------------------------

C# 代码 调用 API 类似:



Handle MenuHandle = GetSystemMenu(_Handle, false);

Handle _newMenuHandle = CreateMenu();

InsertMenu(_newMenuHandle , -1, MF_BYPOSITION, Form1.SC_HELLOWORLD, "HELLO WORLD!");

//事件处理的时候 如果 wParam==SC_HELLOWORLD 就显示一个信息框




...全文
107 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
startstartsvip 2012-04-09
  • 打赏
  • 举报
回复
我看了一下 截获的 message 两次 都是一样的


但是当 我做其他操作,比如把程序最大最小化(在任务栏里面,不是点击菜单),这类信息,截到只有一次,


所以我怀疑是 menu 上面哪里有点问题,等下午 我用 C++ 测试一下
lionmanong 2012-04-09
  • 打赏
  • 举报
回复
应该是调用了两次....调试一下看看
忘世麒麟 2012-04-09
  • 打赏
  • 举报
回复
没有发生过两次的情况.具体的不太清楚.反正自己的没有碰到过.你可以定位到第二次触发的地方看看哪里错了.
startstartsvip 2012-04-09
  • 打赏
  • 举报
回复
求 C++ 兄弟释疑,是不是 c++ 里面 右键菜单,自建选项被点击后 会触发两次相同事件
startstartsvip 2012-04-09
  • 打赏
  • 举报
回复
求 C++ 兄弟释疑,是不是 c++ 里面 右键菜单,自建选项被点击后 会触发两次相同事件
W170532934 2012-04-09
  • 打赏
  • 举报
回复
楼主发错地方了。
startstartsvip 2012-04-09
  • 打赏
  • 举报
回复
Up 点击菜单选项,会有两次相同事件 被激fa.......
startstartsvip 2012-04-09
  • 打赏
  • 举报
回复
c++ 已验证 一次,没有问题
关帖

64,660

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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