怎么样使用任务栏通知区域?
怎么样使用任务栏通知区域?
“为应用程序在任务栏通知区域加个图标,按最小化控制菜单后隐藏窗口,单击通知区域内的图标恢复并显示窗口,右击通知区域内的图标弹出快捷方式菜单”,已成为时下程序设计上的一个时髦主题,有不少文章介绍了如何实现,但在 PowerBuilder 下由于调用 Win32 API 函数和消息处理不很方便,因而很少有人去涉及。本文将讨论如何在 PowerBuilder 下使用任务栏通知区域。
1.相关的 Win32 API 函数
Win32 API 函数 Shell_NotifyIconA 是本文所涉 Win32 API 函数中最为关键者,通过它可以添删通知区域图标,其 Powersoft 原型为:
Function Boolean Shell_NotifyIconA(ULong dwMessage,stc_notifyicondata pnid) Library "Shell32.dll"
其中 stc_notifyicondata 是一个结构,其成员有:
UlongcbSize// 结构大小为 88 字节
UlonghWnd// 接受通知消息的窗口句柄
UlonguID// 通知区域图标的标识号
UlonguFlags// 指示哪些成员是有效的
UlonguCallbackMessage// 通知消息的标识号
UlonghIcon// 图标的句柄
CharszTip[64]// 图标提示
UlongdwState// 图标状态 (IE5)
UlongdwStateMask// 状态掩码 (IE5)
UlonghWnd// 接受通知消息的窗口句柄
UlonguID// 通知区域图标的标识号
UlonguFlags// 指示哪些成员是有效的
UlonguCallbackMessage// 通知消息的标识号
UlonghIcon// 图标的句柄
CharszTip[64]// 图标提示
UlongdwState// 图标状态 (IE5)
UlongdwStateMask// 状态掩码 (IE5)