Seite 1 von 1

Kleines Problem mit PopUpMenu im SysTray

Verfasst: 27.02.2005 21:49
von Skywalker
Nehmt mal den Code und versucht folgendes (Vorher natürlich noch ein Icon in Zeile 3 einsetzen):

Im SysTray auf das Icon klicken, im PopUpMenu ´Neues Fenster´ anklicken.
Danach wieder auf das Icon klicken aber diesmal ´Fenster schließen´ wählen.
Und jetzt versucht mal wieder an das PopUpMenu zu kommen. Es geht nicht mehr. :shock:

Mein Fehler oder was kann das sein? :?

Gruß
Thomas

Code: Alles auswählen

OpenWindow(0, 100, 150, 300, 100, #PB_Window_SystemMenu, "Hauptfenster")
 
  AddSysTrayIcon(1, WindowID(), LoadImage(0, "test.ico"))
  
  If CreatePopupMenu(2) 
    MenuItem(1, "Neues Fenster") 
    MenuItem(2, "Fenster schließen")
    MenuBar() 
    MenuItem(99, "Exit") 
  EndIf 
  
  Repeat
    Event = WaitWindowEvent()
    
    If Event = #PB_Event_SysTray
      If EventType() = #PB_EventType_LeftClick
        DisplayPopupMenu(2, WindowID())
      EndIf
    EndIf
    If Event = #PB_EventMenu 
      Select EventMenuID() 
        Case 1 
          OpenWindow(1, 200, 200, 300, 100, #PB_Window_ScreenCentered, "Neues Fenster")
        Case 2  
          CloseWindow(1)
        Case 99 ; Quit 
          Quit = 1 
      EndSelect 
    EndIf 
  Until Quit=1 Or Event = #PB_Event_CloseWindow

Verfasst: 27.02.2005 21:56
von Hroudtwolf
Das ist ganz klar. Denn du willst dein Popup auf deinem Fenster darstellen. Wenn dein Fenster aber geschlossen wird geht das natürlich nicht.

Verfasst: 27.02.2005 21:59
von MVXA
Musste HideWindow() benutzen ^^.

Verfasst: 27.02.2005 23:33
von Skywalker
Verstehe ich nicht so ganz.
Ich schließe doch mein Fenster (0) nicht, sondern nur das neue Fenster (1).

Das Hauptfenster bleibt ja auch offen.

Verfasst: 28.02.2005 19:27
von Skywalker
Problem gelöst, Fehler lag bei mir. :freak:
Danilo hat mich drauf gebracht.

Einfach die Zeile:
DisplayPopupMenu(2, WindowID())

abändern in:
DisplayPopupMenu(2, WindowID(0))

Schon klappt das mit dem PopUp Menü

Gruß
Thomas