WinGetPos

Retrieves the position and size of the specified window.

WinGetPos , OutX, OutY, OutWidth, OutHeight, WinTitle, WinText, ExcludeTitle, ExcludeText

Parameters

OutX, OutY

If omitted, the corresponding value will not be stored. Otherwise, specify the names of the output variables in which to store the X and Y coordinates of the target window's upper left corner.

OutWidth, OutHeight

If omitted, the corresponding value will not be stored. Otherwise, specify the names of the output variables in which to store the width and height of the target window.

WinTitle, WinText, ExcludeTitle, ExcludeText

If each of these is blank or omitted, the Last Found Window will be used. Otherwise, specify for WinTitle a window title or other criteria to identify the target window and/or for WinText a substring from a single text element of the target window (as revealed by the included Window Spy utility).

ExcludeTitle and ExcludeText can be used to exclude one or more windows by their title or text. Their specification is similar to WinTitle and WinText, except that ExcludeTitle does not recognize any criteria other than the window title.

Window titles and text are case-sensitive. By default, hidden windows are not detected and hidden text elements are detected, unless changed with DetectHiddenWindows and DetectHiddenText. By default, a window title must start with the specified WinTitle or ExcludeTitle to be a match, unless changed with SetTitleMatchMode.

Remarks

If no matching window is found, the output variables will be made blank.

If WinTitle is Program Manager, the command will retrieve the size of the desktop, which is usually the same as the current screen resolution.

A minimized window will still have a position and size. The values returned in this case may vary depending on OS and configuration.

To discover the name of the window and control that the mouse is currently hovering over, use MouseGetPos.

On systems with multiple screens which have different DPI settings, the returned position and size may be different than expected due to OS DPI scaling.

WinMove, ControlGetPos, WinGetActiveStats, WinGetActiveTitle, WinGetTitle, WinGetText, ControlGetText

Examples

Retrieves and reports the position and size of the calculator.

WinGetPos, X, Y, W, H, Calculator
MsgBox, Calculator is at %X%`,%Y% and its size is %W%x%H%

Retrieves and reports the position of the active window.

WinGetPos, X, Y,,, A
MsgBox, The active window is at %X%`,%Y%

If Notepad does exist, retrieve and report its position.

if WinExist("Untitled - Notepad")
{
    WinGetPos, Xpos, Ypos ; Use the window found by WinExist.
    MsgBox, Notepad is at %Xpos%`,%Ypos%
}