IfWinActive / IfWinNotActive

Prüft, ob ein bestimmtes Fenster existiert und gerade aktiv ist.

Veraltet: Diese Kontrollanweisungen sind nicht für neue Skripte empfohlen. Verwenden Sie stattdessen die WinActive-Funktion.

IfWinActive , FensterTitel, FensterText, AusnahmeTitel, AusnahmeText
IfWinNotActive , FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

Parameter

FensterTitel, FensterText, AusnahmeTitel, AusnahmeText

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 (Textelemente können mit dem internen Tool "Window Spy" in Erfahrung gebracht werden).

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 und DetectHiddenText geändert werden kann. Standardmäßig muss ein Fenstertitel mit dem angegebenen FensterTitel oder AusnahmeTitel beginnen, um eine Übereinstimmung zu sein, was mit SetTitleMatchMode geändert werden kann.

Hinweis: Aus Gründen der Abwärtskompatibilität wird AusnahmeTitel als Befehl interpretiert, wenn es genau mit dem Namen eines Befehls übereinstimmt. Um das zu umgehen, verwenden Sie stattdessen die WinActive-Funktion.

Bemerkungen

Wenn eine dieser Kontrollanweisungen feststellt, dass das aktive Fenster eine qualifizierte Übereinstimmung ist, wird das Zuletzt Gefundene Fenster auf dieses aktive Fenster aktualisiert. Mit anderen Worten, wenn die Auswertung von IfWinActive True ergibt oder die Auswertung von IfWinNotActive False ergibt, wird das Zuletzt Gefundene Fenster aktualisiert.

Eine einfache Möglichkeit, die HWND-Nummer (eindeutige ID) des aktiven Fensters abzurufen, ist AktiveHwnd := WinExist("A").

SetWinDelay hat keinen Einfluss auf diese Kontrollanweisungen.

WinActive(), IfWinExist / IfWinNotExist, SetTitleMatchMode, DetectHiddenWindows, Zuletzt Gefundenes Fenster, WinActivate, WinWaitActive, WinWait, WinWaitClose, #IfWinActive/Exist

Beispiele

Maximiert das Notepad-Fenster, welches von der darüber liegenden IfWinActive-Anweisung gefunden wurde.

IfWinActive, Unbenannt - Editor
{
    WinMaximize ; Verwendet das von IfWinActive gefundene Fenster.
    Send, Dies ist ein Text.{Enter}
    return
}