0

当用户关注应用程序的系统托盘图标时,我想从系统托盘显示我的应用程序的统计信息。为此,我使用了 Shell_NotifyIcon(),但它的最大字符串大小限制为 64 个字符。因此,我使用“CreateWindow()”创建了自己的工具提示窗口(我使用的是 Win32 API),当我将鼠标悬停在图标上时它工作正常。但是当系统托盘图标仅使用键盘聚焦时它不起作用。

当我调试该应用程序时,似乎使用键盘聚焦图标时没有捕获任何 Windows 消息。但是当我将鼠标悬停在图标上时,我会收到 WM_MOUSEMOVE 消息。

当系统托盘图标使用键盘聚焦时(即 Win+B --> 使用箭头键导航到您的图标),是否会发送任何 Windows 消息?

任何替代建议将不胜感激。

谢谢,库纳尔

4

1 回答 1

0

系统托盘图标工具提示仅在 Windows 2000 之前的 Windows 版本上限制为 64 个字符。在 Windows 2000 中,工具提示限制增加到 128 个字符。

当图标通过键盘聚焦/激活时,会有消息。您可能需要通过 向系统托盘询问它们NIM_SETVERSION

阅读文档:

通知和通知区域

Shell_NotifyIcon()。备注中有很多关于处理键盘/鼠标消息的信息。

于 2013-10-23T19:15:54.987 回答