Rubrik: System/Windows · Desktop/Bildschirm/Display | VB-Versionen: VB4, VB5, VB6 | 30.05.03 |
Desktop per VB-Anweisung anzeigen Mal eben schnell den Desktop anzeigen... Mit der SendKeys-Funktion nicht möglich, aber mit dem Windows API ;-) | ||
Autor: Dieter Otter | Bewertung: | Views: 21.823 |
www.tools4vb.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Vor kurzem wurde uns im Forum die Frage gestellt, wie sich per VB-Code der Windows-Desktop anzeigen lässt. Hierfür reserviert Windows bekanntlich den Shortcut <Windows-Taste> + D. Kurz überlegt... erster Gedanke... mit der SendKeys sollte das doch eigentlich möglich sein. Doch weit gefehlt, den die SendKeys-Anweisung unterstützt leider keine Windows-Taste.
Die Lösung heißt wie so oft: Windows-API
Mit Hilfe der keybd_event-Funktion simulieren wir einfach das Drücken und Loslassen der <Windows>-Taste und D.
' benötigte API-Deklarationen Private Declare Sub keybd_event Lib "user32" ( _ ByVal bVk As Byte, _ ByVal bScan As Byte, _ ByVal dwFlags As Long, _ ByVal dwExtraInfo As Long) Private Const KEYEVENTF_KEYUP = &H2 Private Const VK_WIN = &H5B
' Windows-Desktop anzeigen Public Sub ShowDesktop() ' Windows-Taste niederdrücken keybd_event VK_WIN, 1, 0, 0 ' D-Taste niederdrücken keybd_event Asc("D"), 1, 0, 0 ' D-Taste loslassen keybd_event Asc("D"), 1, KEYEVENTF_KEYUP, 0 ' Windows-Taste loslassen keybd_event VK_WIN, 1, KEYEVENTF_KEYUP, 0 End Sub