Seite 1 von 1
Taskbar Tranzparent
Verfasst: 06.06.2006 10:10
von roherter
Inspiriert von diesem Programm wollte ich wissen ob das mit PB auch geht und ob es schwer ist das zu realiesieren ,es funktioniert und das nur mit ein bischen Code.
http://www.winload.de/download/17289/Gr ... P-2.1.html
Mein Code funktioniert unter xp,2000:
Code: Alles auswählen
hwnd= FindWindow_("shell_traywnd","")
SetWindowLong_(hwnd,#GWL_EXSTYLE,GetWindowLong_(hwnd,#GWL_EXSTYLE)|#WS_EX_LAYERED)
SetLayeredWindowAttributes_(hwnd,0,127,2); Da wo jetzt die 127 steht kommt der tranzparentwert rein.
Verfasst: 06.06.2006 18:00
von #NULL
wow! echt genial... vor allem wenn man bedenkt, dass das tool von deinem link 0,4 MB groß is und die vollversion fast 10$ kostet
Verfasst: 08.06.2006 14:40
von funk.munich
Hi roherter,
und wie kann man diesen Wert zurücksetzen?
Danke + Gruß,
Daniel
Verfasst: 08.06.2006 15:52
von #NULL
auf meinem rechner läuft jetzt immer dieses programm
Code: Alles auswählen
;zum beenden der exe deren namen im taskmanager suchen und prozess beenden
min=130
max=230
speed=2
up.l=0
lucid.l=max
Repeat
Delay(50)
If up : lucid+speed
Else : lucid-speed
EndIf
If lucid>max : lucid=max : up=0 : EndIf
If lucid<min : lucid=min : up=1 : EndIf
hwnd= FindWindow_("shell_traywnd","")
SetWindowLong_(hwnd,#GWL_EXSTYLE,GetWindowLong_(hwnd,#GWL_EXSTYLE)|#WS_EX_LAYERED)
SetLayeredWindowAttributes_(hwnd,0,lucid,2); Da wo jetzt die 127 steht kommt der tranzparentwert rein.
Until 0
Verfasst: 08.06.2006 16:37
von Kaeru Gaman
@#NULL
ich glaub, den style setzen brauchst du nur beim ersten aufruf...
> und wie kann man diesen Wert zurücksetzen?
am anfang den wert von
rückspeichern, am schluss wieder darauf setzen.
Verfasst: 08.06.2006 17:54
von edel
Code: Alles auswählen
Alpha = Val(ProgramParameter())
If NOT Alpha > 0 or NOT Alpha < 255
Alpha = 150
EndIf
hwnd = FindWindow_("shell_traywnd","")
style = GetWindowLong_(hwnd,#GWL_EXSTYLE)
If style & #WS_EX_LAYERED
SetWindowLong_(hwnd,#GWL_EXSTYLE,style&(~#WS_EX_LAYERED))
Else
SetWindowLong_(hwnd,#GWL_EXSTYLE,style|#WS_EX_LAYERED)
SetLayeredWindowAttributes_(hwnd,0,Alpha,#LWA_ALPHA)
EndIf
1. mal starten an
2. mal starten aus
Ueber Parameter kann der Alphawert uebergeben werden

Verfasst: 08.06.2006 23:05
von STARGÅTE
Diese Transparens ist !! SUPER GEIL !! und auch !! SUPER NÜTZLICH !!
welchen parameter muss man änderen damit man auch die Seitlichen Symbolleisten transparent machen kann oder auch andere Fenster ?
Verfasst: 09.06.2006 09:23
von Kaeru Gaman
@Edel
yo, bitwise NOT geht auch.
aber da ich nicht sicher war, ob eines der bits von #WS_EX_LAYERED
bei dem vorherigen zustand von #GWL_EXSTYLE gesetzt sein könnte,
dachte ich sicherheitshalber eher an rückspeichern.
(hab kein PB hier zum checken. wenn LAYERED nur ein einziges bit ist, das nur dafür zuständig ist, kann natürlich nix passieren...)