GUIs IM Hintergrund halten

  • Hey. Ich arbeite grad an nem kleinen Projekt für mich persönlich um meinen Desktop etwas zu verschönern.

    Dazu hab ich erstmal einige GUIs (werden noch ein paar mehr) die im Endeffekt unsichtbar werden, und auf denen dann Buttons liegen.

    Nun soll das ganze aber schön im Hintergrund bleiben, so dass man die Oberfläche eben nur sieht wenn man auf dem Desktop ist.

    Hoffe ihr versteht was ich mein, is schon spät ...

    Hier das was ich bisher hab:

    Ohne eine Funktion die das ganze permanent im Hintergrund hält, brauch ich gar nich erst weiter machen ^^

    Leider haben mir die paar Infos die mir Google ausgespuckt hat nich wirklich weiter geholfen, oder ich versteh sie nich... kann auch sein.

    Hoffe mir kann da einer helfen :)

    • Offizieller Beitrag

    Deinem Bsp. nach, möchtest du GUI erstellen, die als Button fungieren?? Da du diese als Child einer Haupt-GUI erstellst, kannst du doch auch gleich Button nutzen. Ich kann gerade nicht den Grund erkennen, warum du so vorgehen möchtest.

    Du kannst dir die GUI auch kpl. schenken und nur Button auf dem Desktop platzieren (steinaltes Bsp. von mir: "Schwebende" Button - Skriptbeispiel)

  • Gut zu wissen ^^

    War noch auf dem Stand dass da ne GUI dabei sein muss, also danke schon mal dafür :)

    Jedoch löst das leider das eigentliche Problem nicht.

    Auch wenn ich nur schwebende Buttons hab, müssen die trotzdem permanent im Hintergrund bleiben.

    • Offizieller Beitrag

    Auch wenn ich nur schwebende Buttons hab, müssen die trotzdem permanent im Hintergrund bleiben.

    Na dann brauchst du nur ein paar Zeilen einfügen, die die Button-GUI in der Z-Order ganz unten platzieren:

  • Zu dem dem Skript aus Beitrag 4 möchte ich eine Kleinigkeit ergänzen. Die Größenermittlung in den Zeilen 14 und 15 sind nicht notwendig. Man kann wie in dem Beispiel in der Hilfe einfach die entsprechenden Flags verwenden, damit Größe und Position nicht geändert werden und bei den entsprechenden Angaben (X,Y, ..) auch 0 eintragen.

    _WinAPI_SetWindowPos($gui, $HWND_BOTTOM, 0, 0, 0, 0, BitOR($SWP_NOACTIVATE, $SWP_NOMOVE, $SWP_NOSIZE))

    Grüße autoiter

  • damit Größe und Position nicht geändert werden und bei den entsprechenden Angaben (X,Y, ..) auch 0 eintragen.

    Durch $SWP_NOMOVE und $SWP_NOSIZE werden die Parameter für Position und Größe ignoriert...

    _WinAPI_SetWindowPos($hWnd, $HWND_BOTTOM, 'AutoIt', 'ist', 'echt', 'cool ;-)', BitOR($SWP_NOACTIVATE, $SWP_NOMOVE, $SWP_NOSIZE))

    ...du kannst da also angeben was immer du willst. ;)