im folgenden beispiel, wird das startmenü aufgerufen, sobald der knopf gedrückt wurde. mein programm verliert auch anschliessend den fokus, so wie es auch sein sollte. wenn ich jetzt jedoch die windows taste drücke, um das startmenü zu schliessen, kriegt mein programm den fokus nicht zurück. wie kann ich das nun beheben und wie kriege ich eigentlich raus, ob das startmenü schon aufgeklappt ist oder nicht??
Code: Alles auswählen
If OpenWindow(0, 0, 0, 250, 100, #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_ScreenCentered, "Test")
  If CreateGadgetList(WindowID())
    ButtonGadget(0, 5, 5, 240, 90, "Klick Mich!")
  EndIf
  AddKeyboardShortcut(0, #PB_Shortcut_Escape, 0)
EndIf
  
Repeat
  Event = WaitWindowEvent()
  If Event = #PB_EventGadget
    GadgetID = EventGadgetID()
    If GadgetID = 0
      SetForegroundWindow_(FindWindow_("Shell_TrayWnd", 0))
      PostMessage_(GetWindow_(FindWindow_("Shell_TrayWnd", 0), #GW_CHILD), #WM_LBUTTONDOWN, 0, 0)
    EndIf
  ElseIf Event = #PB_EventMenu
    MenuID = EventMenuID()
    If MenuID = 0
      End
    EndIf
  EndIf
Until Event = #PB_EventCloseWindow
  
Endnco2k
