controls.uia_controls 控件模块
- uia_controls.ButtonWrapper
- uia_controls.ComboBoxWrapper
- uia_controls.EditWrapper
- uia_controls.HeaderItemWrapper
- uia_controls.HeaderWrapper
- uia_controls.ListItemWrapper
- uia_controls.ListViewWrapper
- ListViewWrapper.cell
- ListViewWrapper.cells
- ListViewWrapper.column_count
- ListViewWrapper.columns
- ListViewWrapper.get_column
- ListViewWrapper.get_header_control
- ListViewWrapper.get_header_controls
- ListViewWrapper.get_item
- ListViewWrapper.get_item_rect
- ListViewWrapper.get_items
- ListViewWrapper.get_selected_count
- ListViewWrapper.item
- ListViewWrapper.item_count
- ListViewWrapper.items
- ListViewWrapper.texts
- ListViewWrapper.writable_props
- uia_controls.MenuItemWrapper
- uia_controls.MenuWrapper
- uia_controls.SliderWrapper
- uia_controls.StaticWrapper
- uia_controls.TabControlWrapper
- uia_controls.ToolbarWrapper
- uia_controls.TooltipWrapper
- uia_controls.TreeItemWrapper
- uia_controls.TreeViewWrapper
各种 UIA 窗口控件
uia_controls.ButtonWrapper
class pywinauto.controls.uia_controls.ButtonWrapper(elem)
- 与 UIA 兼容的 Button、CheckBox 或 RadioButton 控件
ButtonWrapper.click
pywinauto.controls.uia_controls.ButtonWrapper.click()
- 使用“调用”或“选择模式”单击“Button”控件
ButtonWrapper.get_toggle_state
pywinauto.controls.uia_controls.ButtonWrapper.get_toggle_state()
- 获取复选框控件的切换状态。
切换状态由整数 0 表示 - 未选中 1 - 选中 2 - 不确定
uia_defines
模块中定义了以下常量 toggle_state_off = 0
、toggle_state_on = 1
、toggle_state_inderteminate = 2
。
ButtonWrapper.is_dialog
pywinauto.controls.uia_controls.ButtonWrapper.is_dialog()
- 按钮从来都不是对话框,因此返回 False
ButtonWrapper.toggle
pywinauto.controls.uia_controls.ButtonWrapper.toggle()
- Toggle 控件模式的 Toggle 方法的接口。
支持切换模式的控件按以下顺序循环切换其切换状态:ToggleState_On
、ToggleState_Off
和ToggleState_Indeterminate
(如果支持)。
通常应用于复选框控件。
单选按钮控件不实现 IToggleProvider
,因为它无法循环访问其有效状态。切换复选框控件的状态。(请改用“select”方法)请注意,UIA 不支持单选按钮控件。 https://msdn.microsoft.com/en-us/library/windows/desktop/ee671290(v=vs.85).aspx
uia_controls.ComboBoxWrapper
class pywinauto.controls.uia_controls.ComboBoxWrapper(elem)
- UIA CoboBox 控件
ComboBoxWrapper.collapse
pywinauto.controls.uia_controls.ComboBoxWrapper.collapse()
ComboBoxWrapper.expand
pywinauto.controls.uia_controls.ComboBoxWrapper.expand()
ComboBoxWrapper.get_expand_state
pywinauto.controls.uia_controls.ComboBoxWrapper.get_expand_state()
ComboBoxWrapper.is_editable
pywinauto.controls.uia_controls.ComboBoxWrapper.is_editable()
ComboBoxWrapper.item_count
pywinauto.controls.uia_controls.ComboBoxWrapper.item_count()
- 返回组合框中的项数
该接口主要是为了向后兼容本机 ComboBox 接口
ComboBoxWrapper.select
pywinauto.controls.uia_controls.ComboBoxWrapper.select(item)
- 选择 ComboBox 项
该项可以是要选择的项的从 0 开始的索引,也可以是要选择的字符串
ComboBoxWrapper.selected_index
pywinauto.controls.uia_controls.ComboBoxWrapper.selected_index()
- 返回所选索引
ComboBoxWrapper.selected_text
pywinauto.controls.uia_controls.ComboBoxWrapper.selected_text()
- 返回所选文本或
None
请注意,在多选的情况下,它将只是第一个选定项中的文本
ComboBoxWrapper.texts
pywinauto.controls.uia_controls.ComboBoxWrapper.texts()
- 返回组合框中项目的文本
uia_controls.EditWrapper
class pywinauto.controls.uia_controls.EditWrapper(elem)
与 UIA 兼容的编辑控件
EditWrapper.get_line
pywinauto.controls.uia_controls.EditWrapper.get_line(line_index)
- 返回指定的行
EditWrapper.get_value
pywinauto.controls.uia_controls.EditWrapper.get_value()
- 返回元素的当前值
EditWrapper.is_editable
pywinauto.controls.uia_controls.EditWrapper.is_editable()
- 返回元素的编辑可能性
EditWrapper.line_count
pywinauto.controls.uia_controls.EditWrapper.line_count()
- 返回“编辑”中有多少行
EditWrapper.line_length
pywinauto.controls.uia_controls.EditWrapper.line_length(line_index)
- 返回行中有多少个字符
EditWrapper.select
pywinauto.controls.uia_controls.EditWrapper.select(start=0, end=None)
- 设置编辑控件的编辑选择
EditWrapper.selection_indices
pywinauto.controls.uia_controls.EditWrapper.selection_indices()
- 当前选择的开始和结束索引
EditWrapper.set_edit_text
pywinauto.controls.uia_controls.EditWrapper.set_edit_text(text, pos_start=None, pos_end=None)
- 设置编辑控件的文本
EditWrapper.set_text
pywinauto.controls.uia_controls.EditWrapper.set_text(text, pos_start=None, pos_end=None)
- 设置编辑控件的文本
EditWrapper.set_window_text
pywinauto.controls.uia_controls.EditWrapper.set_window_text(text, append=False)
- 重写编辑控件的
set_window_text
,因为它不应用于编辑控件。
编辑控件应使用 set_edit_text()
或 type_keys()
来修改编辑控件的内容。
EditWrapper.text_block
pywinauto.controls.uia_controls.EditWrapper.text_block()
- 获取编辑控件的文本
EditWrapper.texts
pywinauto.controls.uia_controls.EditWrapper.texts()
- 获取编辑控件的文本
EditWrapper.writable_props
pywinauto.controls.uia_controls.EditWrapper.writable_props
- 扩展默认属性列表。
uia_controls.HeaderItemWrapper
class pywinauto.controls.uia_controls.HeaderItemWrapper(elem)
与 UIA 兼容的标头项控件
uia_controls.HeaderWrapper
class pywinauto.controls.uia_controls.HeaderWrapper(elem)
与 UIA 兼容的标头控件
uia_controls.ListItemWrapper
class pywinauto.controls.uia_controls.ListItemWrapper(elem, container=None)
与 UIA 兼容的 ListViewItem 控件
ListItemWrapper.is_checked
pywinauto.controls.uia_controls.ListItemWrapper.is_checked()
- 如果选中 ListItem,则返回 True
只有支持切换模式的项目才能回答。如果模式不受支持,则引发 NoPatternInterfaceError
ListItemWrapper.texts
pywinauto.controls.uia_controls.ListItemWrapper.texts()
- 返回项目文本列表
uia_controls.ListViewWrapper
class pywinauto.controls.uia_controls.ListViewWrapper(elem)
与 UIA 兼容的 ListView 控件
ListViewWrapper.cell
pywinauto.controls.uia_controls.ListViewWrapper.cell(row, column)
- 返回 ListView 控件中的单元格
仅适用于支持网格模式的控件
row
是列表中行的索引。column
是指定行中列的索引。
返回的单元格可以是不同的控件类型。主要是:TextBlock、ImageControl、EditControl、DataItem 甚至另一层数据项(Group、DataGrid)
ListViewWrapper.cells
pywinauto.controls.uia_controls.ListViewWrapper.cells()
- 返回任何类型的控制的单元格列表列表
ListViewWrapper.column_count
pywinauto.controls.uia_controls.ListViewWrapper.column_count()
- 返回列数
ListViewWrapper.columns
pywinauto.controls.uia_controls.ListViewWrapper.columns()
- 获取有关 ListView 列的信息
ListViewWrapper.get_column
pywinauto.controls.uia_controls.ListViewWrapper.get_column(col_index)
- 获取 ListView 列的信息
ListViewWrapper.get_header_control
pywinauto.controls.uia_controls.ListViewWrapper.get_header_control()
- 与 ListView 关联的 Return Header 控件
ListViewWrapper.get_header_controls
pywinauto.controls.uia_controls.ListViewWrapper.get_header_controls()
- 与表关联的返回标头控件
ListViewWrapper.get_item
pywinauto.controls.uia_controls.ListViewWrapper.get_item(row)
- 返回 ListView 控件的项
row
可以是行的索引,也可以是要返回的行中单元格文本的字符串。
ListViewWrapper.get_item_rect
pywinauto.controls.uia_controls.ListViewWrapper.get_item_rect(item_index)
- 返回列表视图项的边界矩形
保留该方法主要是为了向后兼容本机 ListViewWrapper 接口
ListViewWrapper.get_items
pywinauto.controls.uia_controls.ListViewWrapper.get_items()
- 返回 ListView 控件的所有项
ListViewWrapper.get_selected_count
pywinauto.controls.uia_controls.ListViewWrapper.get_selected_count()
- 返回多个选定项目
当我们需要计算所选项目的数量时,会检索所有已选中的项目,因此调用可能会很昂贵。
ListViewWrapper.item
pywinauto.controls.uia_controls.ListViewWrapper.item(row)
- 返回 ListView 控件的项
row
可以是行的索引,也可以是要返回的行中单元格文本的字符串。
ListViewWrapper.item_count
pywinauto.controls.uia_controls.ListViewWrapper.item_count()
- ListView 中的许多项
ListViewWrapper.items
pywinauto.controls.uia_controls.ListViewWrapper.items()
- 返回 ListView 控件的所有项
ListViewWrapper.texts
pywinauto.controls.uia_controls.ListViewWrapper.texts()
- 返回项目文本列表
ListViewWrapper.writable_props
pywinauto.controls.uia_controls.ListViewWrapper.writable_props
- 扩展默认属性列表。
uia_controls.MenuItemWrapper
class pywinauto.controls.uia_controls.MenuItemWrapper(elem)
与 UIA 兼容的 MenuItem 控件
MenuItemWrapper.items
pywinauto.controls.uia_controls.MenuItemWrapper.items()
- 查找菜单项的所有项目
MenuItemWrapper.select
pywinauto.controls.uia_controls.MenuItemWrapper.select()
- 应用 Select 模式
uia_controls.MenuWrapper
class pywinauto.controls.uia_controls.MenuWrapper(elem)
与 UIA 兼容的 MenuBar 或 Menu 控件
MenuWrapper.item_by_index
pywinauto.controls.uia_controls.MenuWrapper.item_by_index(idx)
- 查找索引指定的菜单项
MenuWrapper.item_by_path
pywinauto.controls.uia_controls.MenuWrapper.item_by_path(path, exact=False)
- 查找路径指定的菜单项
完整路径语法在以下位置指定: controls.menuwrapper.Menu.get_menu_path()
注意:不支持 $ - 说明符
pywinauto.controls.uia_controls.MenuWrapper.items()
- 查找所有菜单项
uia_controls.SliderWrapper
class pywinauto.controls.uia_controls.SliderWrapper(elem)
与 UIA 兼容的滑块控件
SliderWrapper.large_change
pywinauto.controls.uia_controls.SliderWrapper.large_change()
- 获取滑块的大幅度变化
变化是通过在滑块的滑块拥有键盘焦点时按下 PgUp 和 PgDown 键来实现的。
SliderWrapper.max_value
pywinauto.controls.uia_controls.SliderWrapper.max_value()
- 获取滑块的最大值
SliderWrapper.min_value
pywinauto.controls.uia_controls.SliderWrapper.min_value()
- 获取滑块的最小值
SliderWrapper.set_value
pywinauto.controls.uia_controls.SliderWrapper.set_value(value)
- 设置滑块拇指的位置
SliderWrapper.small_change
pywinauto.controls.uia_controls.SliderWrapper.small_change()
- 获取滑块的小幅度变化。
这种变化是通过在滑块的滑块拥有键盘焦点时按下左右箭头键来实现的。
SliderWrapper.value
pywinauto.controls.uia_controls.SliderWrapper.value()
- 获取滑块拇指的当前位置
uia_controls.StaticWrapper
class pywinauto.controls.uia_controls.StaticWrapper(elem)
与 UIA 兼容的文本控件
uia_controls.TabControlWrapper
class pywinauto.controls.uia_controls.TabControlWrapper(elem)
与 UIA 兼容的 Tab 控件
TabControlWrapper.get_selected_tab
pywinauto.controls.uia_controls.TabControlWrapper.get_selected_tab()
- 返回所选选项卡的索引
TabControlWrapper.select
pywinauto.controls.uia_controls.TabControlWrapper.select(item)
- 按索引或名称选择选项卡
TabControlWrapper.tab_count
pywinauto.controls.uia_controls.TabControlWrapper.tab_count()
- 返回多个选项卡
TabControlWrapper.texts
pywinauto.controls.uia_controls.TabControlWrapper.texts()
- 选项卡文本
uia_controls.ToolbarWrapper
class pywinauto.controls.uia_controls.ToolbarWrapper(elem)
与 UIA 兼容的 ToolBar 控件
控件的子项通常为:Buttons、SplitButton、MenuItems、ThumbControls、TextControls、Separators、CheckBoxes。请注意,工具提示控件是顶部窗口的子级,而不是工具栏的子级。
ToolbarWrapper.button
pywinauto.controls.uia_controls.ToolbarWrapper.button(button_identifier, exact=True)
- 按指定标识符返回按钮
button_identifier
可以是按钮的索引,也可以是包含按钮文本的字符串。exact
标志指定是否必须应用文本查找的完全匹配项。
ToolbarWrapper.button_count
pywinauto.controls.uia_controls.ToolbarWrapper.button_count()
- 返回工具栏上的多个按钮
ToolbarWrapper.buttons
pywinauto.controls.uia_controls.ToolbarWrapper.buttons()
- 返回所有可用按钮
pywinauto.controls.uia_controls.ToolbarWrapper.check_button(button_identifier, make_checked, exact=True)
- 找到按钮所在的位置并切换它
button_identifier
可以是按钮的索引,也可以是按钮上带有文本的字符串。make_checked
指定按钮所需的切换状态。如果按钮已处于指定状态,则不会更改状态。exact
标志指定是否必须应用文本查找的完全匹配项。
ToolbarWrapper.texts
pywinauto.controls.uia_controls.ToolbarWrapper.texts()
- 返回工具栏的文本
ToolbarWrapper.writable_props
pywinauto.controls.uia_controls.ToolbarWrapper.writable_props
- 扩展默认属性列表。
uia_controls.TooltipWrapper
class pywinauto.controls.uia_controls.TooltipWrapper(elem)
与 UIA 兼容的工具提示控件
uia_controls.TreeItemWrapper
class pywinauto.controls.uia_controls.TreeItemWrapper(elem)
与 UIA 兼容的 TreeItem 控件
除了包装器提供的方法之外,其他继承方法可能特别有用:select()
、extend()
、collapse()
、is_extended()
、is_collapsed()
、click_input()
、rectangle
等等
TreeItemWrapper.ensure_visible
pywinauto.controls.uia_controls.TreeItemWrapper.ensure_visible()
- 确保 TreeView 项可见
TreeItemWrapper.get_child
pywinauto.controls.uia_controls.TreeItemWrapper.get_child(child_spec, exact=False)
- 返回此项目的子项目
接受字符串或索引。如果传递了字符串,则返回与该字符串最匹配的子项。
TreeItemWrapper.is_checked
pywinauto.controls.uia_controls.TreeItemWrapper.is_checked()
- 如果选中 TreeItem,则返回 True
只有支持 Toggle 模式的项目才能回答。如果不支持该模式,则引发 NoPatternInterfaceError。
TreeItemWrapper.sub_elements
pywinauto.controls.uia_controls.TreeItemWrapper.sub_elements()
- 返回此控件的所有可见子项的列表
uia_controls.TreeViewWrapper
class pywinauto.controls.uia_controls.TreeViewWrapper(elem)
与 UIA 兼容的 Tree 控件
TreeViewWrapper.get_item
pywinauto.controls.uia_controls.TreeViewWrapper.get_item(path, exact=False)
- 读取 TreeView 项目
path
要返回的项的路径。这可以是以下方法之一:- 以 \ 个字符分隔的字符串。第一个字符必须是 \。此字符串在 \ 个字符上拆分,每个字符都用于查找每个级别的特定子项。\ 表示根项 - 因此无需指定根项本身。
- 字符串列表/元组 - 第一项应为根元素。
- 整数列表/元组 - 要选择的根的第一项索引。索引始终从零开始:
get_item((0, 2, 3))
exact
一个标志来请求路径中字符串的精确匹配,或应用best_match
的模糊逻辑,从而允许非精确路径说明符
TreeViewWrapper.item_count
pywinauto.controls.uia_controls.TreeViewWrapper.item_count()
- 在 TreeView 中返回许多项目
TreeViewWrapper.print_items
pywinauto.controls.uia_controls.TreeViewWrapper.print_items()
- 打印所有带有行缩进的项目
TreeViewWrapper.roots
pywinauto.controls.uia_controls.TreeViewWrapper.roots()
- 返回 TreeView 的根元素
TreeViewWrapper.writable_props
pywinauto.controls.uia_controls.TreeViewWrapper.writable_props
- 扩展默认属性列表。