Структура NOTIFYICONDATA

Type NOTIFYICONDATA  
  cbSize As Long  
  hWnd As Long
  uID As Long
  uFlags As Long
  uCallbackMessage As Long
  hIcon As Long
  szTip As String * 64  ' Windows 2000: возможно String * 128
  
' Следующие компоненты имеют силу только в Windows 2000!
    'dwState As Long
  'dwStateMask As Long
  'szInfo As String * 256
  'uTimeoutOrVersion As Long
  'szInfoTitle As String * 64
  'dwInfoFlags As Long
End Type
  

Структура NOTIFYICONDATA хранит информацию, связанную со значком в system tray, описывая параметры настройки для рассматриваемого значка. Windows 2000 значительно расширяет эту структуру, добавляя множественные компоненты данных, не доступные в предыдущих версиях Windows.

Примечание для Visual Basic

Windows 2000: Официально,компонент uTimeoutOrVersion -это фактически два отдельных компонента данных, uTimeout и uVersion, которые занимают то же самое пространство в пределах структуры. Поскольку Visual Basic не поддерживает объединения подобно C++, необходимо назначить единственное имя к этому компоненту данных. Однако, использование этого псевдонима не влияет на потерю его функциональных возможностей.

Состав структуры

cbSize
Размер структуры в байтах.
hWnd
Дескриптор окна,к которому относится значок в systray.
uID
Идентификатор, который уникально идентифицирует значок. Это значение позволяет окну иметь множественные значки в systray, позволяя окно сообщать различия между ними.
uFlags
Комбинация следующих флажков, определяющих, которые из последующих членов структуры содержат полезные данные. Любые компоненты данных, не идентифицированные флажком будут игнорироваться.
NIF_ICON
Компонент данных hIcon.
NIF_MESSAGE
Компонент данных uCallbackMessage.
NIF_TIP
Компонент данных szTip .
NIF_STATE
Windows 2000: Компоненты данных dwState и dwStateMask.
NIF_INFO
Windows 2000: Использование стиля воздушного шара вместо обычной всплывающей подсказки. Компоненты данных szInfo, szTimeOut, szInfoTitle и dwInfoFlags используются.
uCallbackMessage
Определенный приложением идентификатор сообщения. Это сообщение посылается окну всякий раз, когда происходит событие,связанное со значком в systray. Прежде всего-это, когда мышь перемещается или происходитщелчок поверх значка или когда окно получает ввод с клавиатуры. Параметр wParam будет определен идентификатором значка, который генерирует сообщение. Параметр lParam "реальный" идентификатор сообщения Windows .
hIcon
Дескриптор значка.
szTip
Строка с нулевым символом в конце. Этот текст появляется, когда курсор мыши находится над значком.
dwState
Windows 2000: Комбинация следующих флажков, определяющих состояние значка. Каждый флажок - независимый переключатель.
NIS_HIDDEN
Значок скрыт.
NIS_SHAREDICON
Значок разделен.
dwStateMask
Windows 2000: Комбинация вышеупомянутых флажков, которая определяет флажки из dwState для модификаций.
szInfo
Windows 2000: Строка с нулевым символом в конце, используемая для стиля воздушного шара в подсказке.
uTimeoutOrVersion
Windows 2000: Значение времени ожидания, в миллисекундах, для показа подсказки в стиле воздушного шара.

Или, если Shell_NotifyIcon будет вызвано с флагом NIM_VERSION, то вместо этого будет определяться, использовать ли поведение Windows 2000 или Windows 95. По умолчанию, Windows 2000 будет использовать различные сообщения в некоторых случаях, чтобы связаться с окном обладания. Для совместимости, Вы должны использовать старое поведение. Это - один из следующих флажков:
0
Используйте поведение Windows 95.
NOTIFYICON_VERSION
Используйте поведение Windows 2000.
szInfoTitle
Строка с нулевым символом в конце, чтобы использовать как заголовок подсказки в стиле воздушного шара. Это будет появляться в жирном начертании текста.
dwInfoFlags
Если желательно, один из следующих флажков, определяющих значок, отображаемый слева от подсказки в стиле воздушного шара. Установите в 0, чтобы не использовать значок.
NIIF_WARNING
Значок предупреждения.
NIIF_ERROR
Значок ошибки.
NIIF_INFO
Значок информации.

Константы

Const NIF_ICON = &H2
Const NIF_MESSAGE = &H1
Const NIF_TIP = &H4
Const NIF_STATE = &H8
Const NIF_INFO = &H10
Const NIS_HIDDEN = &H1
Const NIS_SHAREDICON = &H2
Const NOTIFYICON_VERSION = &H1
Const NIIF_WARNING = &H30
Const NIIF_ERROR = &H10
Const NIIF_INFO = &H40

Используется в
Shell_NotifyIcon

В начало.