VBA Tipp: Taskleiste ausblenden/einblenden

Aus DBWiki
Wechseln zu: Navigation, Suche

Aufgabenstellung

Ich möchte die Taskleiste ausblenden, um den gesamten Bildschirm für meine Anwendung nutzen zu können, und nach Beenden der Anwendung die Taskleiste wieder einblenden.

Lösung

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
  (ByVal lpClassName As String, ByVal lpWindowName As String) _
   As Long
Private Declare Function SetWindowPos Lib "user32" _
  (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, _
   ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) _
   As Long
Private Const SWP_SHOWWINDOW = &H40
Private Const SWP_HIDEWINDOW = &H80
 
Public Function HideTray()
Dim hWnd As Long
' Taskleiste ausblenden
  hWnd = FindWindow("Shell_TrayWnd", 0&)
  SetWindowPos hWnd, 0&, 0&, 0&, 0&, 0&, SWP_HIDEWINDOW
End Function
 
Public Function ShowTray()
Dim hWnd As Long
' Taskleiste einblenden
  hWnd = FindWindow("Shell_TrayWnd", 0&)
  SetWindowPos hWnd, 0&, 0&, 0&, 0&, 0&, SWP_SHOWWINDOW
End Function

Aufruf

Call HideTray ' blendet Taskleiste aus