ReplaceSysTrayIcon

SysTray ››
Parent Previous Next

ReplaceSysTrayIcon

Синтаксис

sub ReplaceSysTrayIcon(ByVal NumberSysTray As Integer,ByVal icon As Any ptr,ByRef ToolTipSysTray As String)

Описание

Изменяет иконку и подсказку в системном трее

Параметры

NumberSysTray - Номер (идентификатор) системного трея

icon - Хендл иконки. На Windows допускается тип HICON. На Linux допускается тип HBITMAP , то есть на Linux можно использовать изображение любого формата , поддерживаемого Load_Image

ToolTipSysTray - Подсказка для иконки системного трея

Платформы

Windows , Linux

Пример

#Include "window9.bi"
Dim As HWND hWnd
Dim Shared As HMENU hmenu
hwnd=OpenWindow("",10,10,300,300)
hmenu=CreatePopMenu()
MenuItem(1001,hmenu,"Изменить иконку")
var st = AddSysTrayIcon(1,hwnd,Load_Icon("1.ico"),"SYSTRAY приложение")
Do
Var   ev=WaitEvent
If ev=EventClose Then
 Deletesystrayicon(1)
 End
EndIf
#ifdef __fb_win32__
If ev=eventRbdown Then ' on windows systray and popup menu work only with signal keydown
 If EventNumber = 1 Then
  DisplayPopupMenu(hmenu,GlobalMouseX,GlobalMouseY )
#else
If ev=eventRbUp Then
 If EventNumber = 1 Then ' on Linux systray and popup menu work only with signal keyUp
  DisplayPopupMenu(hmenu,,,st )
#endif
 EndIf
EndIf
If ev=EventMenu Then
 If EventNumber=1001 Then
  ReplaceSysTrayIcon(1,Load_Icon("2.ico"),"Новая иконка")
 EndIf
EndIf
Loop

Результат

Created with the Personal Edition of HelpNDoc: Easily create Help documents