# WinGetClientPos

检索指定窗口的工作区的位置和大小.

    WinGetClientPos &X, &Y, &Width, &Height, WinTitle, WinText, ExcludeTitle, ExcludeText

## 参数

&X, &Y

  类型: VarRef

  用于存储工作区左上角的 X 和 Y 坐标的变量引用. 如果省略, 将不会存储相应的值.

&Width, &Height

  类型: VarRef

  用于存储工作区宽度和高度的变量引用. 如果省略, 将不会存储相应的值.

WinTitle, WinText, ExcludeTitle, ExcludeText

  类型: 字符串, 整数或对象

  如果这些都未设置或省略, 将使用上次找到的窗口. 否则, 为 WinTitle 指定窗口标题或其他条件, 来标识目标窗口, 和/或为 WinText 指定目标窗口的单个文本元素的子字符串(由包含的 Window Spy 实用程序显示). 如果 DetectHiddenText 已经打开, 则检测隐藏文本元素. 标题或文本包含 ExcludeTitle 或 ExcludeText 的窗口将不被考虑.

## 错误处理

如果找不到窗口, 则抛出 TargetError.

## 备注

工作区是窗口的一部分, 可以包含控件. 它不包括窗口的标题栏, 菜单栏(如果有标准菜单) 和边框. 与 WinGetPos 返回的值相比, 工作区的位置和大小较少地依赖于操作系统版本和主题.

根据操作系统和配置的不同, 最小化的窗口返回的值可能会有所不同, 但是 X 和 Y 坐标通常为 -32000, 而宽度和高度为 0.

## 相关

WinGetPos, WinMove, ControlGetPos, WinGetTitle, WinGetText, ControlGetText

## 示例

获取和报告计算器工作区域的位置和大小.

    WinGetClientPos &X, &Y, &W, &H, "Calculator"
    MsgBox "Calculator's client area is at " X "," Y " and its size is " W "x" H

获取并报告活动窗口工作区域的位置.

    WinGetClientPos &X, &Y,,, "A"
    MsgBox "The active window's client area is at " X "," Y

如果记事本存在, 检索并报告其工作区域的位置.

    if WinExist("Untitled - Notepad")
    {
        WinGetClientPos &Xpos, &Ypos ; 使用由 WinExist 找到的窗口.
        MsgBox "Notepad's client area is at " Xpos "," Ypos
    }

dftg