【Pywinauto库】10.7 pywinauto.controls.uia_controls控件
模块说明
该模块封装了各种 UIA (Microsoft UI Automation) 窗口控件,为自动化测试提供统一的编程接口。
模块概览
pywinauto.controls.uia_controlsclass 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()
: 按钮不是对话框,返回 Falsetoggle()
: 切换控件的状态(主要用于复选框)
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 控件的统一封装,使得自动化测试脚本可以以一致的方式操作各种界面元素。每个包装器类都提供了特定于控件类型的方法和属性,同时继承了基类的通用功能。