Wie lässt sich die Windows-Taskleiste transparent machen? Option Explicit ' Benötigte API-Deklarationen Private Declare Function SetLayeredWindowAttributes Lib "user32" ( _ ByVal hwnd As Long, _ ByVal crey As Byte, _ ByVal bAlpha As Byte, _ ByVal dwFlags As Long) As Long Private Declare Function FindWindow Lib "user32.dll" _ Alias "FindWindowA" ( _ ByVal lpClassName As String, _ ByVal lpWindowName As String) As Long Private Declare Function GetWindowLong Lib "user32" _ Alias "GetWindowLongA" ( _ ByVal hwnd As Long, _ ByVal nIndex As Long) As Long Private Declare Function SetWindowLong Lib "user32" _ Alias "SetWindowLongA" ( _ ByVal hwnd As Long, _ ByVal nIndex As Long, _ ByVal dwNewLong As Long) As Long Private Const GWL_EXSTYLE = (-20) Private Const WS_EX_LAYERED = &H80000 Private Const LWA_ALPHA = &H2 Public Sub Taskbar_Transparent_Level( _ ByVal bLevel As Byte) Dim lOldStyle As Long Dim LhWnd As Long ' Fensterhandle ermitteln LhWnd = FindWindow("Shell_TrayWnd", vbNullString) If (LhWnd <> 0) Then lOldStyle = GetWindowLong(LhWnd, GWL_EXSTYLE) SetWindowLong LhWnd, GWL_EXSTYLE, lOldStyle Or WS_EX_LAYERED SetLayeredWindowAttributes LhWnd, 0, bLevel, LWA_ALPHA End If LhWnd = FindWindow("BaseBar", vbNullString) If (LhWnd <> 0) Then lOldStyle = GetWindowLong(LhWnd, GWL_EXSTYLE) SetWindowLong LhWnd, GWL_EXSTYLE, lOldStyle Or WS_EX_LAYERED SetLayeredWindowAttributes LhWnd, 0, bLevel, LWA_ALPHA End If End Sub Der Aufruf erfolgt dann so: ' Taskbar transparent machen Taskbar_Transparent_Level 100 ' Taskbar wieder normal darstellen Taskbar_Transparent_Level 255 Wie Sie unschwer erkennen können, lässt sich die Intensität über den Parameter bLevel angeben. 0 bedeutet hierbei völlig unsichtbar, wohingegen der Wert 255 keine Transparenz bedeutet. Dieser Tipp wurde bereits 17.282 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevISDN 1.0 Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung sevAniGif (VB/VBA) Anzeigen von animierten GIF-Dateien Ab sofort lassen sich auch unter VB6 und VBA (Access ab Version 2000) animierte GIF-Grafiken anzeigen und abspielen, die entweder lokal auf dem System oder auf einem Webserver gespeichert sind. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |