0

我正在开发一个用 C++ 编写并使用 MFC 的非常大且复杂的 Windows 应用程序。

我正在处理这个错误,如果用户按下气球工具提示,它不会关闭,只有在超时后。

问题是我得到了NIN_BALLOONUSERCLICK事件并设法关闭了工具提示,但是当用户按下右上角的“X”按钮时,我似乎无法捕捉到引发的事件。

谁能帮我?我应该寻找什么活动?我花了大约 3 天的时间在互联网上搜索,但似乎没有人知道一种方法。

如果您能告诉我如何使“X”关闭按钮消失,那也可以!

4

1 回答 1

1

您找不到任何此类事件的原因是因为该事件不存在。无法区分由于用户单击其上某处而关闭的气球和由于用户专门单击关闭(“X”)按钮而关闭的气球。

更多信息可以在 Raymond Chen 的博客上找到这篇文章:为什么当用户点击“X”按钮时通知图标没有收到消息?

基本上,该事件不存在以防止您做坏事,例如惹恼您的用户。根据用户关闭气球通知的方式,您绝对没有理由需要做一些不同的事情。

让“X”按钮消失绝对是错误的选择。要求这样做听起来就像您正是Windows Shell 团队试图保护我们免受攻击的开发人员。很高兴有人支持我们作为您应用程序的毫无戒心的用户。用户喜欢能够忽略事物。可用性研究一再表明,当没有“取消”按钮时,用户会感到非常紧张和困惑。您需要在合理的、用户友好的设计限制内工作。

NIN_BALLOONUSERCLICK是正确的选择。当用户单击它时,工具提示将被关闭。该文档更详细地解释了所有可用的各种通知。

于 2011-07-17T13:10:00.263 回答