gibts nicht auch ne andere Möglichkeit das das window sowohl transparent wie auch aus der Taskbar bleibt?
Will nur ein Programm haben, was ich später NUR über ein Systray Icon steuere.
Code: Alles auswählen
hwnd = OpenWindow(0,0,0,230,90,#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_Invisible,"Verschieb mich !")
If hwnd
If CreateGadgetList(WindowID())
ButtonGadget (1, 10, 10,200, 20, "Klick mich")
CheckBoxGadget(2, 10, 40,200, 20, "Markiere mich")
EndIf
If CreateMenu(0, WindowID())
MenuTitle("Menu")
MenuItem(1, "Eintrag 1")
MenuItem(2, "Eintrag 2")
MenuItem(3, "Eintrag 3")
EndIf
; es wirkt leider nur: Fenster immer oben (#HWND_TOPMOST)
SetWindowPos_(WindowID(0), #HWND_TOPMOST, 0, 0, 0, 0,#SWP_NOMOVE | #SWP_NOSIZE)
SetWindowLong_(WindowID(0),#GWL_EXSTYLE,#WS_EX_TOOLWINDOW) ; Fenster nich in der Taskbar anzeigen
HideWindow(0, 0) ; Jetzt erst Fenster zeichnen lassen
SetWindowOpacity(hwnd,100) ;Transparent
WinX = WindowX() ; X Position retten
WinY = WindowY() ; y Position retten
Repeat
EventID = WaitWindowEvent()
Select EventID
Case #WM_MOVE ; Wenn Fensterbewegung ....
MoveWindow(WinX,WinY) ; .....Fenster auf alte Position zurück setzen
Case #PB_Event_Gadget
Select EventGadgetID()
Case 1 : Debug "Schalter 1 angeklickt!"
Case 2 : Debug "Schalter 2 angeklickt!"
Case 3 : Debug "Schalter 3 angeklickt!"
EndSelect
Case #PB_Event_Menu
Select EventMenuID()
Case 1 : Debug "Menü-Eintrag 1 angeklickt!"
Case 2 : Debug "Menü-Eintrag 2 angeklickt!"
Case 3 : Debug "Menü-Eintrag 3 angeklickt!"
EndSelect
EndSelect
Until EventID = #PB_Event_CloseWindow
EndIf