ControlGetFocus

Ermittelt, welches Steuerelement im Zielfenster den Tastaturfokus hat, sofern vorhanden.

HWND := ControlGetFocus(FensterTitel, FensterText, AusnahmeTitel, AusnahmeText)

Parameter

FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Typ: Zeichenkette, Integer oder Objekt

Wenn jeder dieser Parameter leer ist oder weggelassen wird, wird das Zuletzt Gefundene Fenster verwendet. Andernfalls geben Sie für FensterTitel einen Fenstertitel oder andere Kriterien zur Identifizierung des Zielfensters und/oder für FensterText eine Teilzeichenkette aus einem Textelement des Zielfensters an (wie von Window Spy angezeigt).

AusnahmeTitel und AusnahmeText können verwendet werden, um ein oder mehrere Fenster anhand ihres Titels oder Textes auszuschließen. Ihre Angabe ähnelt der von FensterTitel und FensterText, außer dass AusnahmeTitel keine anderen Kriterien als den Fenstertitel erkennt.

Fenstertitel und -texte sind Groß-/Kleinschreibung-sensitiv. Standardmäßig werden versteckte Fenster nicht erkannt und versteckte Textelemente erkannt, was mit DetectHiddenWindows bzw. DetectHiddenText geändert werden kann. Verwendet man reine HWNDs, werden versteckte Fenster immer erkannt. Standardmäßig kann ein Fenstertitel den angegebenen FensterTitel oder AusnahmeTitel an beliebiger Stelle enthalten, um eine Übereinstimmung zu sein, was mit SetTitleMatchMode geändert werden kann.

Rückgabewert

Typ: Integer

Diese Funktion gibt das Fensterhandle (HWND) des fokussierten Steuerelements zurück.

Wenn keines der Steuerelemente im Zielfenster den Tastaturfokus hat, wird 0 zurückgegeben.

Fehlerbehandlung

Es wird ein TargetError ausgelöst, wenn das Zielfenster oder Zielsteuerelement nicht ermittelt werden konnte.

Es wird ein OSError ausgelöst, wenn der Tastaturfokus nicht ermittelt werden konnte.

Bemerkungen

Diese Funktion ist für die Verwendung mit Steuerelementen in einem Nicht-GUI-Fenster vorgesehen, also einem Fenster, das nicht mit der Gui-Funktion erstellt wurde. Sie funktioniert am besten mit den gängigen oder vordefinierten Steuerelementen von Microsoft. Einige Anwendungen verwenden jedoch benutzerdefinierte oder modifizierte Steuerelemente – in diesem Fall funktioniert die Funktion möglicherweise nicht wie erwartet. Für GUI-Steuerelemente ist es in der Regel sinnvoller, Gui.FocusedCtrl zu verwenden.

Das mit dieser Funktion abgerufene Steuerelement hat den Tastaturfokus, d.h. das Steuerelement ist das Ziel aller Tastendrücke des Benutzers.

Das Zielfenster muss aktiv sein, um ein fokussiertes Steuerelement zu haben, aber selbst dann ist nicht garantiert, dass es eines hat.

ControlFocus, Gui.FocusedCtrl, Control-Funktionen

Beispiele

Meldet das HWND und die ClassNN des fokussierten Steuerelements im aktiven Fenster.

FokusHwnd := ControlGetFocus("A")
FokusClassNN := ControlGetClassNN(FokusHwnd)
MsgBox 'Steuerelement mit Fokus = {Hwnd: ' FokusHwnd ', ClassNN: "' FokusClassNN '"}'