【Pywinauto库】10.7 pywinauto.controls.uia_controls控件

模块说明

该模块封装了各种 UIA (Microsoft UI Automation) 窗口控件,为自动化测试提供统一的编程接口。

模块概览

python 复制代码
pywinauto.controls.uia_controls
    class ButtonWrapper(elem)
    class ComboBoxWrapper(elem)
    class EditWrapper(elem)
    class HeaderItemWrapper(elem)
    class HeaderWrapper(elem)
    class ListItemWrapper(elem, container=None)
    class ListViewWrapper(elem)
    class MenuItemWrapper(elem)
    class MenuWrapper(elem)
    class SliderWrapper(elem)
    class StaticWrapper(elem)
    class TabControlWrapper(elem)
    class ToolbarWrapper(elem)
    class TooltipWrapper(elem)
    class TreeItemWrapper(elem)
    class TreeViewWrapper(*elem*)

主要控件类详解

ButtonWrapper 类

基类 : pywinauto.controls.uiawrapper.UIAWrapper

封装 UIA 兼容的按钮、复选框或单选按钮控件。

主要方法:

  • click(): 使用 Invoke 或 Select 模式点击按钮
  • get_toggle_state(): 获取复选框的切换状态(0-未选中,1-选中,2-不确定)
  • is_dialog(): 按钮不是对话框,返回 False
  • toggle(): 切换控件的状态(主要用于复选框)
ComboBoxWrapper 类

基类 : pywinauto.controls.uiawrapper.UIAWrapper

封装 UIA 组合框控件。

主要方法:

  • collapse(): 收起组合框
  • expand(): 展开组合框
  • item_count(): 返回组合框中的项目数量
  • select(item): 选择组合框项目(支持索引或字符串)
  • selected_index(): 返回选中项的索引
  • selected_text(): 返回选中项的文本
  • texts(): 返回组合框中所有项目的文本
EditWrapper 类

基类 : pywinauto.controls.uiawrapper.UIAWrapper

封装 UIA 兼容的编辑控件。

主要方法:

  • get_line(line_index): 返回指定行的内容
  • get_value(): 返回元素的当前值
  • line_count(): 返回编辑框中的行数
  • set_edit_text(text, pos_start=None, pos_end=None): 设置编辑控件的文本
  • text_block(): 获取编辑控件的文本
  • texts(): 获取编辑控件的文本
ListViewWrapper 类

基类 : pywinauto.controls.uiawrapper.UIAWrapper

封装 UIA 兼容的列表视图控件。

主要方法:

  • cell(row, column): 返回列表视图控件中的单元格
  • column_count(): 返回列数
  • get_item(row): 返回列表视图控件中的项目
  • item_count(): 返回列表视图中的项目数量
  • texts(): 返回项目文本列表
TreeViewWrapper 类

基类 : pywinauto.controls.uiawrapper.UIAWrapper

封装 UIA 兼容的树形控件。

主要方法:

  • get_item(path, exact=False): 读取树形视图项目
  • item_count(): 返回树形视图中的项目数量
  • print_items(): 打印所有项目(带缩进)
  • roots(): 返回树形视图的根元素
其他控件类
  • SliderWrapper: 滑块控件,支持获取/设置值、最大最小值等
  • TabControlWrapper: 标签页控件,支持选择标签、获取选中标签等
  • ToolbarWrapper: 工具栏控件,支持按钮操作、获取按钮文本等
  • MenuItemWrapper/MenuWrapper: 菜单项和菜单控件
  • StaticWrapper: 静态文本控件
  • HeaderWrapper/HeaderItemWrapper: 表头和表头项控件
  • TooltipWrapper: 工具提示控件
  • ListItemWrapper/TreeItemWrapper: 列表项和树形项控件

使用说明

该模块提供了对 Windows UIA 控件的统一封装,使得自动化测试脚本可以以一致的方式操作各种界面元素。每个包装器类都提供了特定于控件类型的方法和属性,同时继承了基类的通用功能。

相关推荐
前端精髓9 小时前
结构化输出with_structured_output(抽卡)
python·langchain
尹人入圣10 小时前
目前热门的IP驱动产业新场景新工具
网络·python·网络协议·tcp/ip
海宇服务10 小时前
零信任架构实战:基于海宇全能小微企业报告构建自动化园区商户免押租赁资信核验网关
大数据·人工智能·架构·自动化
Nuanyt10 小时前
Agent 学习笔记(下篇三):上线工程、进阶选择与操作界面(Stage 7 / 7.5 / 8 + 延伸路线)
笔记·python·学习·memory·aiagent·harness
吴卫斌10 小时前
定投ETF实战指南(四):行业/主题ETF——定投的“进攻端“
开发语言·python·股票·量化
2601_9679873711 小时前
Python——入门级(定义功能def函数)
python·函数·可变参数·默认参数·关键字参数
画中有画12 小时前
在自动化脚本中操作本地数据库
数据库·oracle·自动化
代码方舟13 小时前
零信任架构实战:基于天远企业法人四要素高级版构建自动化电子印章授权与签约准入网关
人工智能·架构·自动化·区块链
专注仿真13 小时前
梯度提升类(XFBoost)算法详解与代码实例
开发语言·人工智能·python·算法·大模型训练·控制算法
外收内放13 小时前
Python基础语法练习题(75)
开发语言·python·学习