WinExist()

Checks if the specified window exists and returns the unique ID (HWND) of the first matching window.

UniqueID := WinExist(WinTitle, WinText, ExcludeTitle, ExcludeText)

매개변수

WinTitle
목표 창을 식별하는 창 제목 또는 다른 기준. WinTitle 참조.
WinText
존재하면, 이 매개변수는 목표 창 텍스트의 부문자열입니다 (동봉된 Window Spy 유틸리티에 노출됨). 숨은 텍스트는 DetectHiddenText가 켜져 있어야 탐지됩니다.
ExcludeTitle
제목에 이 값이 있는 창은 무시합니다.
ExcludeText
텍스트에 이 값이 있는 창은 무시합니다.

반환 값

This function returns the unique ID (HWND) (as hexadecimal integer) of the first matching window (0 if none).

0-아닌 모든 숫자는 참("true")으로 간주되므로, 다음 서술문 if WinExist(WinTitle)WinTitle이 존재하면 참입니다.

논평

모든 매개변수가 생략되면, 마지막 발견 창을 점검하여 여전히 존재하는지 알아 봅니다.

If a qualified window exists, the Last Found Window will be updated to be that window.

콘트롤의 HWND를 발견하려면 (Post/SendMessage 또는 DllCall에 사용하기 위해), ControlGet Hwnd 또는 MouseGetPos를 사용하십시오.

SetWinDelay does not apply to this function.

창 제목과 텍스트는 대소문자를 구분합니다. 숨은 창은 DetectHiddenWindows가 켜져 있어야 탐지됩니다.

IfWinExist / IfWinNotExist, WinActive(), SetTitleMatchMode, DetectHiddenWindows, 마지막 발견 창, Process, WinActivate, WinWaitActive, WinWait, WinWaitClose, #IfWinActive/Exist

예제

Activates either Notepad or another window, depending on which of them was found by the WinExist functions above. Note that the space between an "ahk_" keyword and its criterion value can be omitted; this is especially useful when using variables, as shown by the second WinExist.

if WinExist("ahk_class Notepad") or WinExist("ahk_class" ClassName)
    WinActivate ; Use the window found by WinExist.

Retrieves and reports the unique ID (HWND) of the active window.

MsgBox % "The active window's ID is " WinExist("A")

Returns if the calculator does not exist.

if not WinExist("Calculator")
    return