| 分享人 | __NULL__ |
| 分享时间 | 4天10小时前 |
| 最后更新 | 4天10小时前 |
| 修订版本 | 3 |
| 子程序大小 | 29.6 KB |
| Quicker版本 | 1.45.5.0 |
感知目标窗口的控件树,并可同时返回窗口截图。
能做什么
e1 / e2 / ...,供 click / type 直接使用from_ref 从已有引用的子树往下深挖,避免每次全窗口遍历screenshot 对目标窗口截图,即使窗口被遮挡、不在前台也能截,返回 PNG Data URL典型场景
| 场景 | 用法 |
|---|---|
| 首次看某窗口有哪些可操作元素 | observe(window=句柄, depth=3) |
| 控件藏在深层(如 Ribbon 按钮) | 先 observe 拿到锚点 ref,再 observe(from_ref="e8", depth=6) |
| 需要"看"界面长什么样 | observe(window=句柄, screenshot=true) |
| 控件读不到、需要人眼确认 | 截图 + 树一起看 |
关键参数
| 参数 | 说明 |
|---|---|
window | 窗口句柄或标题关键字;留空表示前台窗口。截图时必须显式指定 |
depth | 遍历深度,默认 3,范围 1–8 |
max_elements | 最多返回的控件数量,默认 200 |
from_ref | 从某个已有 ref 往下展开,深度相对于该节点 |
screenshot | true 时返回窗口截图(PNG Data URL) |
截图能力说明
PrintWindow,直接从窗口 DC 渲染,不依赖前台、不怕遮挡返回示例(控件树)
{
"ok": true,
"action": "observe",
"windowTitle": "工作簿1 - Excel",
"rootHandle": 69352,
"elementCount": 29,
"tree": { "ref": "e1", "name": "工作簿1 - Excel", "type": "Window", "children": [ ... ] }
}
返回示例(截图)
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...
可直接放进 <img src="...">、Markdown 或前端渲染。
配合使用
list_windows → 找到目标窗口句柄
observe → 感知控件树 / 深挖子树 / 截图
find → 按名称或类型精确找到控件
click / type → 用 ref 操作
定位:basic-control 是通用兜底层,对所有暴露 UIA 的 Windows 桌面软件都适用,不依赖特定软件的专用接口。遇到重度自绘界面(MFC、游戏引擎)读不到细粒度控件时,可回退到快捷键 / 命令搜索 / 坐标点击。
| 修订版本 | 更新时间 | 制品 | 更新说明 |
|---|---|---|---|
| 3 | 4天10小时前 | V1 | 文档 |
| 2 | 4天10小时前 | V1 | 分享信息 |
| 1 | 4天10小时前 | V1 |