首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >模拟右键单击系统托盘图标并单击C++中的上下文菜单

模拟右键单击系统托盘图标并单击C++中的上下文菜单
EN

Stack Overflow用户
提问于 2014-01-24 15:06:41
回答 1查看 1.2K关注 0票数 2

我是一个Python开发人员,对C++略知一二。

尽管如此,我想了解如何右键单击系统托盘图标,并单击上下文菜单上的选项之一。

我环顾了一下互联网,找不到能让我找到系统托盘图标相对于“通知区域”的位置的东西。此外,我可以得到按钮文本的托盘图标。

我使用ToolbarWindow32获得FindWindowEx的句柄。

我尝试用X和Y坐标将WM_RBUTTONDOWNWM_RBUTTONUP发送到ToolbarWindow32的句柄,使用SendMessage,没有发生任何事情。

我完全忘记了如何右键单击图标,并获得上下文菜单信息,并使用它,单击其中一个选项。

EN

回答 1

Stack Overflow用户

发布于 2014-02-12 16:04:20

经过我的研究,没有办法发送点击信息到一个系统托盘图标,至少不是通过任何API,我尝试过。最好的方法--这就是我所遵循的方式--如下:

  1. 将消息格特布托发送到工具栏。
  2. 这将为您检索的按钮检索一个"idCommand",以便您可以使用一个循环来获取所有"idCommand“,这是丁丁结构中的内容。
  3. 使用idComman,您可以向工具栏按钮发送一条带有工具栏句柄的消息,以获得带有直角消息的图标的大小。
  4. 一旦你知道了按钮的尺寸,你只需要得到工具栏的尺寸,这很简单,因为它只是一个窗口,你可以把它写到GetWindowRect
  5. 最后一步是,您现在要发送单击,您要用x and调用事件:工具栏的左界+图标宽度的一半,y是:工具栏的上限+图标高度的一半。(所以你要把点击发送到中心)。 希望能帮上忙!我问了一个类似的问题,并回答了它这里
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21335917

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档