Pb avec Systray

Archive.
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Pb avec Systray

Message par lionel_om »

Bonjour,
Je me suis inspiré d'un code de Nico pour les SystrayIcon ey j'ai utilisé les exemples PureBasic, mais voilà j'ai un problème :
Image

Le code de Nico (qui contient le probl dont je vous parle) est le suivant :

Code : Tout sélectionner

If OpenWindow(0, 100, 150, 300, 100, #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget, "PureBasic - SysTray Example")

  AddSysTrayIcon(0, WindowID(), LoadImage(0, "Data\CdPlayer.ico"))
  SysTrayIconToolTip(0, "Icon 1")
 
  If CreatePopupMenu(0)
    MenuItem(1, "Restaurer")
  EndIf
 
  Repeat
    Event = WaitWindowEvent()
   
    Select Event
      Case #PB_Event_SysTray
        If EventType() = #PB_EventType_RightClick
          DisplayPopupMenu(0, WindowID())
           If IsIconic_(WindowID(0))
            ;cette ligne est utilisée pour l'effet d'agrandissement
            ShowWindow_(WindowID(0),#sw_minimize)
            ;Une tempo est nécessaire sinon ça ne fonctionne pas à tous les coups
            Delay(250)
            ShowWindow_(WindowID(0),#sw_restore)
          EndIf
        EndIf

      Case #WM_SIZE
        If IsIconic_(WindowID(0))
          ShowWindow_(WindowID(0),#sw_hide)
        EndIf
    EndSelect 
  Until Event = #PB_Event_CloseWindow
EndIf
Ce problème concerne que les Window basés sur NT (je crois), donc 2000, NT et XP.

La fenêtre ci-dessus est dispo avecun clic droit sur la barre du bas (avec bouton "Démarrer"), puis "Propriétés". Sélectionner l'onglet "Barre des tâches" (par défaut), puis bouton "Personaliser" en bas à droite.

Donc à chaque fois que je lance mon programme, un nouvel élément est inséré dans cette liste.
Donc logiciel lancé 100 fois = 100 lignes !!!!

'ai cherché dans le registre : sans succès.
Et je ne sais pas dans quel fichier je pourrai modifier ça...

Merci d'avance.
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

J'ai trouvé ça, amis bon j'aurai aimé moins bourrin !!!
http://forum.pcastuces.com/sujet.asp?SU ... 537&Page=2
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Je viens de faire des essais avec XP, je n'ai pas ce problème.

En fait le code ne fait qu'afficher et cacher la fenêtre, tu es sûr que le PB vient du code original et pas du tiens (à tout hasard).
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Ah oui, en fait ca le fais à cause de PB en mode debug.
Car qd on compile (avec F5) ça cré un exe avec un nom bizarre (plein de chiffres, peut être le pid).
Donc là c'est pas cool, car chaque AddSysTrayIcon() crée une nouvelle ligne.

Merci Nico pour la remarque, j'ai eu peur... :!:
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Répondre