ChangeSysTrayIcon()
Syntax
ChangeSysTrayIcon(#SysTrayIcon, ImageID)Beschreibung
Ändert das angegebene Icon im SysTray-Bereich.
Parameter
#SysTrayIcon Das zu ändernde SysTray-Icon. ImageID Das neue Bild, welches für das SysTray-Icon verwendet werden soll. Es ist ratsam, ein PNG-Bild zu verwenden, um einen Transparenz-Layer zu haben. ImageID() kann benutzt werden, um einfach diese ID zu ermitteln.
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Beispiel
; Unsichtbares Fenster, um nur den SysTray anzuzeigen
OpenWindow(0, 0, 0, 10, 10, "", #PB_Window_Invisible)
; Erstellt ein Bild mit einer gelben Box, welches für das SysTray-Icon verwendet wird:
If CreateImage(0, 16, 16) And StartDrawing(ImageOutput(0))
Box(0, 0, 16 , 16, $00DDDD)
StopDrawing()
EndIf
AddSysTrayIcon(0, WindowID(0), ImageID(0))
; Erstellt ein Pop-up Menü, welches später mit dem SysTray Icon verwendet wird:
CreatePopupImageMenu(0, #PB_Menu_SysTrayLook)
MenuItem(0, "Exit")
; Verknüpft das Menü mit dem SysTray
SysTrayIconMenu(0, MenuID(0))
AddWindowTimer(0, 0, 1000) ; Fügt einen Window-Timer hinzu, der einen Wechsel des SysTray Icons aller 1000 ms auslösen soll
Repeat
Select WaitWindowEvent()
Case #PB_Event_Timer
; Aktualisiert das Bild des SysTray Icons mit einem zufälligen roten Kreis auf gelbem Hintergrund
If StartDrawing(ImageOutput(0))
Box(0, 0, 16 , 16, $00DDDD)
Radius = Random(6, 2)
Circle(8, 8, Radius, $0000DD)
StopDrawing()
ChangeSysTrayIcon(0, ImageID(0))
EndIf
Case #PB_Event_Menu
Select EventMenu()
Case 0 ; Programm beenden nach einem Klick auf das 'Exit'-Menü, welches mit dem SysTray-Icon verknüpft wurde
RemoveSysTrayIcon(0)
End
EndSelect
EndSelect
ForEver
Siehe auch
AddSysTrayIcon()
Unterstützte OS
Alle