WinExist()

Überprüft, ob ein bestimmtes Fenster existiert, und gibt die HWND-Nummer (eindeutige ID) des ersten gefundenen Fensters zurück.

EindeutigeID := WinExist(FensterTitel, FensterText, IgnoriereTitel, IgnoriereText)

Parameter

FensterTitel
Der Titel oder andere Möglichkeiten zum Identifizieren des Zielfensters. Weitere Informationen finden Sie unter FensterTitel-Parameter.
FensterText
Eine Zeichenkette, die in einem der Textelemente des Zielfensters enthalten ist (eventuell vorhandene Textelemente können mit dem internen Tool Window Spy aufgedeckt werden). Versteckte Textelemente werden nur erkannt, wenn DetectHiddenText eingeschaltet ist.
IgnoriereTitel
Alle Fenster, die diesen Wert in ihren Titeln enthalten, werden ignoriert.
IgnoriereText
Alle Fenster, die diesen Wert in ihren Textelementen enthalten, werden ignoriert.

Rückgabewert

Diese Funktion gibt die HWND-Nummer (eindeutige ID) des ersten gefundenen Fensters (als hexadezimalen Integer) zurück (oder 0, wenn keine gefunden werden).

Da alle Zahlen ungleich Null als "wahr" angesehen werden, ist die Anweisung if WinExist(FensterTitel) immer dann wahr, wenn FensterTitel vorhanden ist.

Bemerkungen

Wenn alle Parameter weggelassen werden, wird das Zuletzt Gefundene Fenster überprüft, ob es noch existiert.

Wenn ein geeignetes Fenster vorhanden ist, wird das Zuletzt Gefundene Fenster aktualisiert, um dieses Fenster zu sein.

Um die HWND-Nummer eines Steuerelements abzurufen (z. B. für Post/SendMessage oder DllCall), können Sie ControlGet Hwnd oder MouseGetPos nutzen.

SetWinDelay hat keinen Einfluss auf diese Funktion.

Fenstertitel und -texte sind Groß-/Kleinschreibung-sensitiv. Versteckte Fenster werden nur erkannt, wenn DetectHiddenWindows eingeschaltet ist.

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

Beispiele

Aktiviert entweder den Texteditor oder ein anderes Fenster, je nachdem, welches der beiden von den WinExist-Funktionen darüber gefunden wurde. Beachten Sie, dass das Leerzeichen zwischen einem "ahk_"-Schlüsselwort und seinem Kriteriumwert weggelassen werden kann; dies ist besonders nützlich, wenn man Variablen verwendet, wie das zweite WinExist zeigt.

if WinExist("ahk_class Notepad") or WinExist("ahk_class" KlasseName)
    WinActivate ; Verwendet das von WinExist gefundene Fenster.

Ermittelt und meldet die HWND-Nummer (eindeutige ID) des aktiven Fensters.

MsgBox % "Die ID des aktiven Fensters ist " WinExist("A")

Kehrt via Return zurück, wenn der Taschenrechner nicht existiert.

if not WinExist("Rechner")
    return