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


  OpenWindow(0, 0, 0, 10, 10, "", #PB_Window_Invisible)
  
  ; Crée une image avec un carré jaune à utiliser pour l'icône Systray :
  If CreateImage(0, 16, 16) And StartDrawing(ImageOutput(0))
    Box(0, 0, 16 , 16, $00DDDD)
    StopDrawing()
  EndIf
  
  ; Associer une icône au systray
  AddSysTrayIcon(0, WindowID(0), ImageID(0))
  
  ; Crée un menu contextuel à utiliser ultérieurement avec l'icône Systray:
  CreatePopupImageMenu(0, #PB_Menu_SysTrayLook)
    MenuItem(0, "Quitter")
    
  SysTrayIconMenu(0, MenuID(0))
  
  ;Ajoute un minuteur de fenêtre, ce qui devrait entraîner un changement de l'icône Systray toutes les 1 000 ms.
  AddWindowTimer(0, 0, 1000) 
  
  Repeat
    Select WaitWindowEvent()
      Case #PB_Event_Timer
        ; Met à 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_Menu
        Select EventMenu()
          Case 0 ;Quitter après avoir cliqué sur l'élément de menu 'Quitter' associé à l'icône Systray
            RemoveSysTrayIcon(0)
            End
        EndSelect
    EndSelect
  ForEver

Voir aussi

AddSysTrayIcon(), RemoveSysTrayIcon()

OS Supportés

Tous

<- AddSysTrayIcon() - SysTray Index - IsSysTrayIcon() ->