python - pywinauto:如何使用wrapper_object()给出的内存位置字符串?

标签 python python-3.x pywinauto

我在 docs 中发现了这一点

Actual window lookup is performed by wrapper_object() method. It returns some wrapper for the real existing window/control or raises ElementNotFoundError. This wrapper can deal with the window/control by sending actions or retrieving data.

>>> dlg_spec.wrapper_object()
<pywinauto.controls.win32_controls.DialogWrapper object at 0x05639B70>

什么是 0x05639B70 我如何使用它来打印它包含的内容? (例如:print(0x05639B70))

[编辑] 因为它实际上是对象的内存位置(地址)(感谢 Juan),我可以点击它吗?怎么办?

最佳答案

您可以列出该对象的所有可用方法,因为它是 Python:

print(dir(dlg_spec.wrapper_object()))

某些控件可能具有方法.invoke(),因为有时其含义与单击不同。所以我们将其保留为 .invoke()

用于检索控件的文本(Inspect.exe 中的“Name”属性):

print(dlg_spec.window_text())

是的,可以使用文本而不是地址来改进默认打印。已添加issue #322记住这一点。

关于python - pywinauto:如何使用wrapper_object()给出的内存位置字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42515603/

相关文章:

python - pip 安装抛出 IOerror - no setup.py

python - 在python 3中将十六进制转换为数组内的bin

python - 这个返回或设置变量的代码可以变得更简单吗?

python - 在python中为时间戳添加秒数

python - 列出类继承的所有属性

python - 在 NiFi 中取消透视 csv 并将其摄取到 sql server 中

python - 使用 2D 掩码和整个矩阵运算索引的 3D 或 4D Numpy 数组

user-interface - 使用 pywinauto 检查复选框不起作用

python - Pywinauto Windows 存在但不可见

pywinauto - 使用 pywinauto 从组合框中选择一个项目