Rubrik: System/Windows · Prozesse/Tasks | VB-Versionen: VB4, VB5, VB6 | 08.09.02 |
Fremdanwendung minimieren/maximieren Ein Beispiel, das zeigt, wie man eine Fremdanwendung aus dem eigenen Programm minimieren bzw. maximieren kann. | ||
Autor: Dieter Otter | Bewertung: | Views: 42.414 |
www.tools4vb.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Das nachfolgende Beispiel zeigt, wie sich eine Fremdanwendung aus dem eigenen Programm minimieren bzw. maximieren lässt.
Alles was man hierzu braucht, ist das Fensterhandle der Fremdanwendung. Kennt man den exakten Fenstertitel, so lässt sich das Handle sehr einfach über die FindWindow-API herausfinden:
' benötigte API-Deklaration Private Declare Function FindWindow Lib "user32" _ Alias "FindWindowA" ( _ ByVal lpClassName As String, _ ByVal lpWindowName As String) As Long
' Fensterhandle anhand des Fenstertitels ermitteln Dim lhWnd As Long Dim sTitle As String sTitle = "Exakter Fenstertitel" lhWnd = FindWindow(vbNullString, sTitle)
Hat man erst einmal das Fensterhandle, lässt sich das Fenster dann über die ShowWindow-API minimieren oder maximieren. Zudem lässt sich noch festlegen, ob das Fenster den Fokus erhalten soll oder nicht:
' benötigte API-Deklaration Private Declare Function ShowWindow Lib "user32" ( _ ByVal hWnd As Long, _ ByVal nCmdShow As Long) As Long
Der Parameter nCmdShow erwartet einen der folgenden Werte:
- vbHide
- vbMaximizedFocus
- vbMinimizedFocus
- vbMinimizedNoFocus
- vbNormalFocus
- vbNormalNoFocus
Kommen Ihnen diese Werte bekannt vor? Ja genau! Es handelt sich hierbei um die Werte, die man auch bei der Shell-Anweisung verwendet.
' Beispiel: Fenster minimieren
ShowWindow lhWnd, vbMinimizedNoFocus