ChangeSysTrayIcon()
Syntaxe
ChangeSysTrayIcon(#SysTrayIcone, ImageID)Description
Change une icône de la zone de notification.
Arguments
#SysTrayIcone Le numéro de l'icône à changer. ImageID Numéro de la nouvelle image préalablement chargée par la fonction LoadImage().
Le format PNG a l'avantage d'utiliser la transparence.
Un ImageID valide peut être obtenu simplement avec la fonction ImageID().
Valeur de retour
Aucune.
Exemple
If OpenWindow(0, 0, 0, 300, 100, "", #PB_Window_Invisible) ; Créer une image avec une case jaune comme icône Systray : If CreateImage(0, 16, 16) And StartDrawing(ImageOutput(0)) Box(0, 0, 16 , 16, $00DDDD) StopDrawing() EndIf AddSysTrayIcon(0, WindowID(0), ImageID(0)) ; Créer un menu contextuel à utiliser avec l'icône Systray : If CreatePopupImageMenu(0) MenuItem(0, "Quitter") EndIf AddWindowTimer(0, 0, 1000) ; Ajouter un minuteur de fenêtre qui entraînera un changement de l'icône Systray toutes les 1 000 ms. Repeat Select WaitWindowEvent() Case #PB_Event_Timer ; Mettre à jour l'image de l'icône Systray avec un cercle rouge de taille aléatoire sur fond jaune 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_SysTray Select EventType() Case #PB_EventType_RightClick, #PB_EventType_LeftClick DisplayPopupMenu(0, WindowID(0)) ; Afficher le menu contextuel après un clic sur l'icône Systray EndSelect Case #PB_Event_Menu Select EventMenu() Case 0 ; Quittez après avoir cliqué sur l'élément de menu 'Quitter' associé à l'icône Systray RemoveSysTrayIcon(0) FreeMenu(0) CloseWindow(0) End EndSelect EndSelect ForEver EndIf
Voir aussi
AddSysTrayIcon(), RemoveSysTrayIcon()
OS Supportés
Tous