通知/提醒窗口(显示在Windows系统托盘上方)是否像下面的示例一样只是一个标准窗口,所有者提取HMENU
或是使用NOTIFYICONDATA
实现的? 注意:我知道实际的系统托盘图标是使用NOTIFYICONDATA
实现的,但通知窗口是否也使用此结构实现?
在我的WinAPI C ++应用程序中,我想显示一个类似的通知,它会出现在系统托盘图标上方,有按钮,水平滚动条等。我知道我可以创建一个新的HWND,将它放在系统托盘上方并显示,但如果有一个特定的WinAPI'系统托盘通知'类/功能,我宁愿使用它,因此我的问题。
答案 0 :(得分:3)
通知/警报窗口(显示在Windows系统托盘上方)是否像下面的示例一样只是一个标准窗口,所有者绘制了HMENU,还是使用NOTIFYICONDATA实现?
这些是在需要时显示的自定义对话框。他们使用NOTIFYICONDATA
实现 。您可以使用Shell_NotifyIconGetRect()
在需要时获取托盘图标的当前位置。
答案 1 :(得分:1)
托盘通知都是关于通知拥有发生点击事件的图标的进程,以便随后可以执行其操作。
在这种情况下,没有任何与GUI相关的专门机制或框架。
Best Practices:当用户右键单击该图标时,它应该 调出一个普通的快捷菜单。但是,单一的结果 用鼠标左键单击会随着功能的变化而变化 图标。 它应该显示用户希望在表单中看到的内容 最适合该内容 - 弹出窗口,对话框或程序 窗口本身。例如,它可以显示状态图标的状态文本, 或音量控制的滑块。