Transparentes Fenster erzeugen

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

halweg
Posts: 93
Joined: 17 Apr 2018, 10:34
Location: Dresden

Transparentes Fenster erzeugen

03 Apr 2020, 09:48

Ich arbeite viel mit dem Windows Explorer und habe meist mehrere Fenster davon offen. Nun will ich mit Hilfe von AHK erreichen, dass verschiedene Fenster verschiedene farbliche Hintergründe kommen. Das geht mit Windows selbst nicht.

Deshalb hatte ich die Idee, Explorerfenster mit einem durchsichtigen und durchlickbaren Fenster zu überlagern, welches sich der Größe und Position des jeweiligen Explorer-Fensters anpasst.
Was ich also bräuchte, wäre ein farbiges, rahmenloses und transparentes Fenster, welches die Bedienung des dahinter liegenden Explorerfensters nicht behindert und auch nicht den Fokus erhält. Den Rest (Reaktion auf Größen- und Positonsänderung des Explorerfensters) kriege ich programmiert.

Hat jemand dafür eine Idee, wie man so ein halbtransparentes Rechteck mit Hilfe von AHK auf dem Desktop erscheinen lassen kann?

Besten Dank im Voraus, Halweg
User avatar
LuckyJoe
Posts: 341
Joined: 02 Oct 2013, 09:52

Re: Transparentes Fenster erzeugen

03 Apr 2020, 10:40

Hi,

schau mal unter https://ahkde.github.io/docs/commands/WinSet.htm#Transparent.

Viel Erfolg.
HG - Lucky Joe
Herzliche Grüße aus dem Rheinland
Lucky Joe
UnReALiTyy
Posts: 223
Joined: 06 Jun 2017, 11:38

Re: Transparentes Fenster erzeugen

03 Apr 2020, 11:44

@LuckyJoe hast du auch eine Idee wie man bei einem Gui abgerundete Ecken erreichen kann, um es Moderner erscheinen zu lassen?

lg
User avatar
Scr1pter
Posts: 1272
Joined: 06 Aug 2017, 08:21
Location: Germany

Re: Transparentes Fenster erzeugen

03 Apr 2020, 16:31

Hallo,

abgerundete Ecken sind ja im Prinzip nur transparente Pixel.
Du könntest also in einem Photobearbeitungsprogramm ein Rechteck mit transparenten Ecken erzeugen, was dann später abgerundet aussieht.

Grüße
Please use [code][/code] when posting code!
Keyboard: Logitech G PRO - Mouse: Logitech G502 LS - OS: Windows 10 Pro 64 Bit - AHK version: 1.1.33.09
UnReALiTyy
Posts: 223
Joined: 06 Jun 2017, 11:38

Re: Transparentes Fenster erzeugen

04 Apr 2020, 12:28

@Scr1pter stimmt gute Idee aber problematisch wird es bei einem Zoombaren Gui Fenster. :?
halweg
Posts: 93
Joined: 17 Apr 2018, 10:34
Location: Dresden

Re: Transparentes Fenster erzeugen

06 Apr 2020, 11:38


Danke für den Tipp.
Damit hatte ich auch schon experimentiert. Aber leider ist dieses Fenster nur dann "durchklickbar", wenn ich die Transparenz auf 0 setze. Dann kann ich damit aber auch keinen "Farbeffekt" erzeugen.
Gibt es evtl eine Methode, das Fenster durchklickbar zu machen?
User avatar
Scr1pter
Posts: 1272
Joined: 06 Aug 2017, 08:21
Location: Germany

Re: Transparentes Fenster erzeugen

06 Apr 2020, 11:52

Poste mal bitte deinen Code.
Zum Thema durchklickbar gibt es diese Möglichkeit:
+E0x20

Also z.B.
Gui, Tr: +LastFound +AlwaysOnTop -Caption +ToolWindow +E0x20

Grüße
Please use [code][/code] when posting code!
Keyboard: Logitech G PRO - Mouse: Logitech G502 LS - OS: Windows 10 Pro 64 Bit - AHK version: 1.1.33.09
halweg
Posts: 93
Joined: 17 Apr 2018, 10:34
Location: Dresden

Re: Transparentes Fenster erzeugen

07 Apr 2020, 04:33

Danke Scr1pter, ich habe es jetzt grob hinbekommen:

Code: Select all

GUI, test: COLOR, AQUA   
GUI, test: +LASTFOUND -CAPTION +ALWAYSONTOP +E0x20  
GUI, test: SHOW, W300 H200
WINSET, TRANSPARENT, 30
Damit krieg ich erst mal ein transparentes farbiges rechteckiges Fenster und kann das darunter liegende bedienen. Ich habe also schon mal eine Technologie zum Einfärben.
Das "Mitwandern" dieses Overlay-Fensters sollte auch irgendwie erreichbar sein, selbst wenn ich keine System-Ereignisse zu "Explorerfensterposition geändert"kenne, kann ich ich ja immer noch regelmäßig deren Position abfragen.
Was mir noch Kopfschmerzen bereitet: Wie bekomme ich es hin, dass Explorerfenster und transparentes Farboverlay gleichzeitig im Hintergrund verschwinden, insbesondere wenn sie "halbüberdeckt" von anderen Fenstern sind. Es würde ja schon helfen, wenn ich dieses "ist nicht mehr vollständig sichtbar" irgendwie erkennen könnte.
User avatar
Scr1pter
Posts: 1272
Joined: 06 Aug 2017, 08:21
Location: Germany

Re: Transparentes Fenster erzeugen

07 Apr 2020, 04:42

Du könntest prüfen lassen, welches Fenster gerade das aktive ist.
Entweder über if WinActive oder WinGetTitle.
Das 2. ist möglicherweise sinnvoller, wenn die Fenster alle vom gleichen Typ sind (Windows Explorer).

Ich muss aber ehrlich sagen, dass ich immer noch nicht ganz verstanden habe, warum du das brauchst.

Hab eigentlich auch immer viele Fenster offen und wüsste nicht, warum ich die farblich kennzeichnen müsste.
Sicherlich ist es ein interessantes Gimmick, aber ist es das wirklich Wert, dass am Ende permanent 2 Loops laufen?

Ich hatte auch mal die Idee, dass ich ein grafisches Symbol z.B. in Notepad integriere, was dann eine Funktion in Notepad auslöst.
(Das geht praktisch in die gleiche Richtung wie dein Vorhaben. )
Mir wurde davon sofort abgeraten.

Viele Grüße
Please use [code][/code] when posting code!
Keyboard: Logitech G PRO - Mouse: Logitech G502 LS - OS: Windows 10 Pro 64 Bit - AHK version: 1.1.33.09
halweg
Posts: 93
Joined: 17 Apr 2018, 10:34
Location: Dresden

Re: Transparentes Fenster erzeugen

07 Apr 2020, 05:43

Danke fürs Mitdenken.
Richtig ich kann per IFWINACTIVE feststellen, wenn mein Explorerfenster nicht mehr aktiv ist.
Wenn ich es recht verstehe, müsste ich:
1. Ab Nicht-Aktiv-Status auch dem Overlay den Alwaysontop-Status entziehen.
2. Es irgendwie hinbekommen, dass sich nichts zwischen das Obverlay und das Explorerfenster schieben kann.
Das ist vielleicht automatisch so, wenn das Overlay automatisch immer direkt nach dem erscheinenden Explorerfenster drübergelegt wird.

Es ist ja so, dass mein Tool "Fensterpflege" ohnehin immer das jeweils aktuelle Fenster im Blick hat. Von daher weiß ich auch, dass ein 150ms Scan keine nennenswerte Prozessorbelastung darstellt. Diesem Tool würde ich dann auch das Hinzufügen des farbigen Rechtecks übertragen. Und ja, das könnte man z. B. auch für Excel-Tabellen oder ähnliches umsetzen.

Zur Sinnhaftigkeit:
Eigentlich habe ich sehr oft die Situation, dass ich etwas Altes (Ordner, Excel, Word) und etwas Neues parallel öffne und nicht verwechseln will (das ist leider schon passiert). Oder es gib ein "Zentralobjekt" (Ordner, Tabelle, Dokument) und mehrere Nebenobjekte, die untergeordnet sind.
In all den Fällen sollte eine farbliche Kennzeichnung mehr Überblick bringen.

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: No registered users and 115 guests