显示、更改、删除 系统栏图标调用此函数。
Public Declare Function Shell_NotifyIcon Lib "shell32.dll" Alias " Shell_NotifyIconA" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long |
参数 | 意义 |
---|---|
dwMessage | 显示方式: Public Const NIM_ADD As Long = &H0 ' 增加图标 Public Const NIM_DELETE As Long = &H2 ' 删除图标 Public Const NIM_MODIFY As Long = &H1 ' 修改图标 Public Const NIM_SETFOCUS As Long = &H3 ' Public Const NIM_SETVERSION As Long = &H4 ' |
lpData | NotifyiconData 结构地址 |
版本 | Visual Basic 6 | Delphi 6 |
---|---|---|
Win98 | Type NOTIFYICONDATA cbSize As Long hwnd As Long uID As Long uFlags As Long uCallbackMessage As Long hIcon As Long szTip As String * 64 End Type |
type NOTIFYICONDATA = record cbSize: DWORD; Wnd : HWND; uID : UINT; uFlags : UINT; uCallbackMessage: UINT; hIcon : HICON; szTip: array[0..63] of AnsiChar; end; |
Win2000 | Type NOTIFYICONDATA cbSize As Long hwnd As Long uId As Long uFlags As Long uCallBackMessage As Long hIcon As Long szTip As String * 128 dwState As Long dwStateMask As Long szInfo As String * 256 uTimeoutOrVersion As Long szInfoTitle As String * 64 dwInfoFlags As Long End Type |
type NOTIFYICONDATA = record cbSize : DWORD; Wnd : HWND; uID : UINT; uFlags : UINT; uCallbackMessage : UINT; hIcon : HICON; szTip: array[0..127] of AnsiChar; dwState : DWORD; dwStateMask : DWORD; szInfo: array [0..255] of AnsiChar; uTimeoutOrVersion : DWORD; szInfoTitle: array[0..63] of AnsiChar; dwInfoFlags : DWORD; end; |
属性 | 意义 |
---|---|
cbSize | 结构尺寸,必须设为 Sizeof(TNotifyIconData) |
hwnd | 图标消息发往的窗体句柄 |
uID | 图标号,多个图标以此区别,自定 |
uFlags | 功能设置:(组合相加) Public Const NIF_MESSAGE As Long = &H1 ' 发送消息 Public Const NIF_ICON As Long = &H2 ' 显示图标 Public Const NIF_TIP As Long = &H4 ' 显示 szTip Public Const NIF_STATE As Long = &H8 ' Public Const NIF_INFO As Long = &H10 ' 显示气球 |
uCallbackMessage | 自定义消息号,必须在窗体中检测此消息 |
hIcon | 图标句柄, 一般取窗体的 Icon.Handle |
szTip | 鼠标悬停提示文字 |
dwState | 图标状态 Public Const NIS_HIDDEN = &H1 ' 隐藏图标 Public Const NIS_SHAREDICON = &H2 ' 共享图标 |
dwStateMask | 图标状态掩码 Public Const NIS_HIDDEN = &H1 ' 隐藏图标 Public Const NIS_SHAREDICON = &H2 ' 共享图标 |
szInfo | 气球提示正文 |
uTimeoutOrVersion | 气球显示时间/版本,复合参数 时间(低位):10000 - 30000 ms 版本(高位):0 for V4, 3 for V5 |
szInfoTitle | 气球提示标题 |
dwInfoFlags | 气球图标类型 Public Const NIIF_NONE = &H0 ' 无图标 Public Const NIIF_INFO = &H1 ' "消息"图标 Public Const NIIF_WARNING = &H2 ' "警告"图标 Public Const NIIF_ERROR = &H3 ' "错误"图标 |
(ByVal hwnd As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long) |
参数 | 意义 |
---|---|
hwnd | 接收消息的窗体 |
msg | 自定义消息号,同上面的 uCallbackMessage |
wParam | 图标号,同上面的 uID |
lParam | lParam 类型 |
常量 | 意义 |
---|---|
Public Const WM_MOUSEMOVE = &H200 | 鼠标指到图标 |
Public Const WM_LBUTTONDOWN = &H201 | 左键按下 |
Public Const WM_LBUTTONUP = &H202 | 左键放开 |
Public Const WM_LBUTTONDBLCLK = &H203 | 左键双击 |
Public Const WM_RBUTTONDOWN = &H204 | 右键按下 |
Public Const WM_RBUTTONUP = &H205 | 右键放开 |
Public Const WM_RBUTTONDBLCLK = &H206 | 右键双击 |