Pywinauto-0.6.8 base_wrapper 控件模块 电脑端软件GUI鼠标键盘Python自动化办公、测试、重复性工作制定库

所有后端中所有包装器的基类

pywinauto.base_wrapper.BaseMeta

class pywinauto.base_wrapper.BaseMeta
  • Wrapper 对象的抽象元类

base_wrapper.BaseMeta.find_wrapper

static pywinauto.base_wrapper.BaseMeta.find_wrapper(element)
  • 抽象静态方法找到合适的包装器

base_wrapper.BaseWrapper

class pywinauto.base_wrapper.BaseWrapper(element_info, active_backend)
  • 元素的抽象包装器。

所有其他包装器都派生自此。

BaseWrapper.capture_as_image

pywinauto.base_wrapper.BaseWrapper.capture_as_image(rect=None)
  • 返回控件的 PIL 映像。

请参阅 PIL 文档,了解您可以对生成的图像执行哪些操作。

BaseWrapper.children

pywinauto.base_wrapper.BaseWrapper.children(**kwargs)
  • 以列表形式返回此元素的子元素

它返回 BaseWrapper(或子类)实例的列表。如果没有子项,则返回空列表。

BaseWrapper.class_name

pywinauto.base_wrapper.BaseWrapper.class_name()
  • 返回 elenemt 的类名

BaseWrapper.click_input

pywinauto.base_wrapper.BaseWrapper.click_input(button='left', coords=(None, None), button_down=True, button_up=True, double=False, wheel_dist=0, use_log=True, pressed='', absolute=False, key_down=True, key_up=True)

单击指定的坐标

参数默认值说明
buttonleft要单击的鼠标按钮。‘left’, ‘right’, ‘middle’ or ‘x’ 之一 (‘move’ 是特例)
coords控件的中心要单击的坐标
doubleFalse是否执行双击
wheel_dist0移动鼠标滚轮的距离

笔记:

  • 这与单击方法不同,因为它要求控件在屏幕上可见,但执行更逼真的“单击”模拟。
  • 如果鼠标由用户移动,则此方法也容易受到攻击,因为在click_input完成之前,鼠标很容易从控件中移出。

BaseWrapper.client_to_screen

pywinauto.base_wrapper.BaseWrapper.client_to_screen(client_point)
  • 将点从客户端映射到屏幕坐标

BaseWrapper.control_count

pywinauto.base_wrapper.BaseWrapper.control_count()
  • 返回此控件的子控件的子项数

BaseWrapper.control_id

pywinauto.base_wrapper.BaseWrapper.control_id()
  • 返回元素的 ID

只有控件具有有效的 ID - 对话框通常没有分配 ID。

ID 通常标识窗口中的控件 - 但可能存在重复的 ID,例如,对话框中的标签可能具有重复的 ID。

BaseWrapper.descendants

pywinauto.base_wrapper.BaseWrapper.descendants(**kwargs)
  • 以列表形式返回此元素的后代

它返回 BaseWrapper(或子类)实例的列表。如果没有后代,则返回空列表。

BaseWrapper.double_click_input

pywinauto.base_wrapper.BaseWrapper.double_click_input(button='left', coords=(None, None))
  • 双击指定坐标

BaseWrapper.drag_mouse_input

pywinauto.base_wrapper.BaseWrapper.drag_mouse_input(dst=(0, 0), src=None, button='left', pressed='', absolute=True)
  • 单击 src,拖放到 dst 上
参数默认值说明
DST(0, 0)目标包装器对象或只是坐标
srcNone源包装器对象或坐标。如果 src 为 None,则 self 用作源对象
buttonleft在拖动过程中按住的鼠标按钮。它可以是“左”、“右”、“中”或“x”
pressed''在拖动过程中按下的键盘上的一个键
absoluteTrue是否对鼠标指针位置使用绝对坐标

BaseWrapper.draw_outline

pywinauto.base_wrapper.BaseWrapper.draw_outline(colour='green', thickness=2, fill=<MagicMock name='mock.win32defines.BS_NULL' id='140124673757368'>, rect=None)
  • 在窗口周围画一个轮廓。
参数默认值说明
colourgreen可以是整数,也可以是“红色”、“绿色”、“蓝色”(默认为“绿色”)之一
thickness2矩形的厚度厚度
fillBS_NULL填写 如何填充矩形
rect控件的矩形要绘制的矩形的坐标

BaseWrapper.element_info

pywinauto.base_wrapper.BaseWrapper.element_info
  • 用于获取 ElementInfo 对象的只读属性

BaseWrapper.friendly_class_name

pywinauto.base_wrapper.BaseWrapper.friendly_class_name()
  • 返回控件的友好类名

在某些情况下,这与控件的类不同。class_name() 是控件的实际“注册”元素类,而 friendly_class_name() 希望对用户更有意义。

例如,复选框是作为 Button 实现的 - 因此 CheckBox 的类是 “Button” - 但友好的类是 “CheckBox”

BaseWrapper.from_point

pywinauto.base_wrapper.BaseWrapper.from_point(x, y)
  • 获取指定屏幕坐标 (x, y) 处元素的包装对象

BaseWrapper.get_properties

pywinauto.base_wrapper.BaseWrapper.get_properties()
  • 以字典形式返回控件的属性。

BaseWrapper.is_child

pywinauto.base_wrapper.BaseWrapper.is_child(parent)
  • 如果此元素是“parent”的子元素,则返回 True。

当一个元素是另一个元素的直接元素时,它是另一个元素的子元素。如果父元素是子元素的父元素链,则元素是给定元素的直接后代。

BaseWrapper.is_dialog

pywinauto.base_wrapper.BaseWrapper.is_dialog()
  • 如果控件是顶级窗口,则返回 True

BaseWrapper.is_enabled

pywinauto.base_wrapper.BaseWrapper.is_enabled()
  • 元素是否启用

检查是否同时启用了拥有此元素的顶级父元素(可能是对话框)和元素本身。

如果要等待某个元素启用(或等待它被禁用),请使用 Application.wait('visible')Application.wait_not('visible')

如果要在未启用元素时立即引发异常,则可以使用 BaseWrapper.verify_enabled() 。如果窗口既不可见又不启用,则 BaseWrapper.VerifyReady() 将引发。

BaseWrapper.is_visible

pywinauto.base_wrapper.BaseWrapper.is_visible()
  • 元素是否可见

  • 检查拥有此元素的顶级父元素(可能是对话框)和元素本身是否都可见。

  • 如果要等待元素变为可见(或等待它变为隐藏),请使用 Application.wait('visible')Application.wait_not('visible')

  • 如果要在元素不可见时立即引发异常,则可以使用 BaseWrapper.verify_visible()。如果元素既不可见又未启用,则 BaseWrapper.verify_actionable() 将引发。

BaseWrapper.iter_children

pywinauto.base_wrapper.BaseWrapper.iter_children(**kwargs)
  • 循环访问此元素的子元素

  • 它返回 BaseWrapper(或子类)实例的生成器。

BaseWrapper.iter_descendants

pywinauto.base_wrapper.BaseWrapper.iter_descendants(**kwargs)
  • 遍历此元素的后代

  • 它返回 BaseWrapper(或子类)实例的生成器。

BaseWrapper.move_mouse_input

pywinauto.base_wrapper.BaseWrapper.move_mouse_input(coords=(0, 0), pressed='', absolute=True)

移动鼠标

BaseWrapper.parent

pywinauto.base_wrapper.BaseWrapper.parent()
  • 返回此元素的父元素

  • 请注意,控件的父项不一定是对话框或其他主窗口。例如,组框可能是某些单选按钮的父级。

  • 要获取主(或顶层)窗口,请使用 BaseWrapper.top_level_parent()

BaseWrapper.press_mouse_input

pywinauto.base_wrapper.BaseWrapper.press_mouse_input(button='left', coords=(None, None), pressed='', absolute=True, key_down=True, key_up=True)
  • 使用 SendInput 按鼠标按钮

BaseWrapper.process_id

pywinauto.base_wrapper.BaseWrapper.process_id()
  • 返回拥有此窗口的进程的 ID

BaseWrapper.rectangle

pywinauto.base_wrapper.BaseWrapper.rectangle()
  • 返回元素的矩形

rectangle() 是屏幕上元素的矩形。坐标从屏幕的左上角给出。

此方法返回一个 RECT 结构,该结构具有 - top、left、right、bottom 属性。并具有 width()height() 方法。请参阅 win32structures.RECT 了解更多信息。

BaseWrapper.release_mouse_input

pywinauto.base_wrapper.BaseWrapper.release_mouse_input(button='left', coords=(None, None), pressed='', absolute=True, key_down=True, key_up=True)
  • 松开鼠标按钮

BaseWrapper.right_click_input

pywinauto.base_wrapper.BaseWrapper.right_click_input(coords=(None, None))
  • 右键单击指定的坐标

BaseWrapper.root

pywinauto.base_wrapper.BaseWrapper.root()
  • 根元素的返回包装器(桌面)

BaseWrapper.set_focus

pywinauto.base_wrapper.BaseWrapper.set_focus()
  • 将焦点设置为此元素

BaseWrapper.texts

pywinauto.base_wrapper.BaseWrapper.texts()
  • 返回此控件的每个项的文本

它是控件的字符串列表。它经常被重写,以从具有多个项的控件中提取所有字符串。

它始终是包含一个或多个字符串的列表:

  • 第一个元素是控件的窗口文本
  • 后续元素包含控件的任何项的文本(例如,列表框/组合框中的项、tabcontrol 中的选项卡)

BaseWrapper.top_from_point

pywinauto.base_wrapper.BaseWrapper.top_from_point(x, y)
  • 获取指定屏幕坐标 (x, y) 处顶级元素的包装对象

BaseWrapper.top_level_parent

pywinauto.base_wrapper.BaseWrapper.top_level_parent()
  • 返回此控件的顶级窗口

TopLevel 父级与父级的不同之处在于,父级是拥有此元素的元素 - 但它可能不是对话框/主窗口。例如,大多数组合框都有一个编辑。ComboBox 是 Edit 控件的父级。

这将始终返回一个有效的窗口元素(如果控件没有顶级父级,则返回控件本身 - 因为它已经是顶级窗口了!

BaseWrapper.type_keys

pywinauto.base_wrapper.BaseWrapper.type_keys(keys, pause=None, with_spaces=False, with_tabs=False, with_newlines=False, turn_off_numlock=True, set_foreground=True, vk_packet=True)
  • 使用 keyboard.send_keys 键入元素的键

这使用重新编写的键盘 python 模块,您可以在其中找到有关键用途的文档。

BaseWrapper.verify_actionable

pywinauto.base_wrapper.BaseWrapper.verify_actionable()
  • 验证该元素是否可见且已启用
  • 如果未启用或不可见,则分别引发 ElementNotEnalbed 或 ElementNotVisible。

BaseWrapper.verify_enabled

pywinauto.base_wrapper.BaseWrapper.verify_enabled()
  • 验证该元素是否已启用

首先检查元素的父元素是否已启用(如果没有父元素,则跳过),然后检查元素本身是否已启用。

BaseWrapper.verify_visible

pywinauto.base_wrapper.BaseWrapper.verify_visible()
  • 验证元素是否可见

首先检查元素的父元素是否可见。(如果没有父项,则跳过),然后检查元素本身是否可见。

BaseWrapper.wait_for_idle

pywinauto.base_wrapper.BaseWrapper.wait_for_idle()

用于等待线程或窗口空闲状态的后端特定函数

BaseWrapper.was_maximized

pywinauto.base_wrapper.BaseWrapper.was_maximized()
  • 指示窗口是否在最小化之前最大化

BaseWrapper.wheel_mouse_input

pywinauto.base_wrapper.BaseWrapper.wheel_mouse_input(coords=(None, None), wheel_dist=1, pressed='')
  • 做鼠标滚轮

BaseWrapper.window_text

pywinauto.base_wrapper.BaseWrapper.window_text()
  • 元素的窗口文本

相当多的控件具有其他可见的文本,例如,编辑控件通常具有用于window_text的空字符串,但仍显示在编辑窗口中的文本。

BaseWrapper.writable_props

pywinauto.base_wrapper.BaseWrapper.writable_props
  • 生成要编写的默认属性的列表。

派生类可能会重写或扩展此列表,具体取决于它们需要多少控制。

exception base_wrapper.ElementNotEnabled

exception pywinauto.base_wrapper.ElementNotEnabled
  • 未启用元素时引发

exception base_wrapper.ElementNotVisible

exception `pywinauto.base_wrapper.ElementNotVisible`
  • 当元素不可见时引发

base_wrapper.InvalidElement

exception pywinauto.base_wrapper.InvalidElement
  • 在传递无效元素时引发

base_wrapper.remove_non_alphanumeric_symbols

pywinauto.base_wrapper.remove_non_alphanumeric_symbols(s)
  • 使文本可用于属性名称
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ょ镜花う水月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值