有没有办法从包装器中获取与 Pywinauto 相同的信息而不是 WindowsSpecification 对象?
Is there a way to get same information with Pywinauto from wrapper than WindowsSpecification object?
所以我在 window:
中使用 get_focus()
函数从包装器中获取此信息
{'class_name': 'Edit', 'friendly_class_name': 'Edit', 'texts': ['', ''], 'control_id': 232, 'rectangle': <RECT L251, T523, R485, B545>, 'is_visible': True, 'is_enabled': True, 'control_count': 0, 'style': 1342242944, 'exstyle': 516, 'user_data': 0, 'context_help_id': 0, 'fonts': [<LOGFONTW 'Arial' -13>], 'client_rects': [<RECT L0, T0, R230, B18>], 'is_unicode': False, 'menu_items': [], 'automation_id': '', 'selection_indices': (0, 0)}
而且我知道它和 WindowSpecification 一样(通过使用 control_identifiers()
然后 wrapper_object()
函数发现):
Edit - '' (L251, T523, R485, B545)
['Edit2', 'TunnusEdit']
child_window(class_name="Edit")
如您所见,包装器没有名称 TunnusEdit
。我能知道如何从包装器中获取这些信息吗?
不,您现在必须创建多级 WindowSpecification。我们计划在未来的版本中添加此功能。但不能保证它会很快。参见 issue #570。
EDIT1:如果您正在使用 "win32" 后端(Application()
的默认设置),它仅支持 2 个级别的 WindowSpecification:第一个是顶级 window 和第二个是给任何后代的。所以像 app.MainWindowTitle.TunnusEdit.wrapper_object()
这样的东西会有所帮助。
所以我在 window:
中使用get_focus()
函数从包装器中获取此信息
{'class_name': 'Edit', 'friendly_class_name': 'Edit', 'texts': ['', ''], 'control_id': 232, 'rectangle': <RECT L251, T523, R485, B545>, 'is_visible': True, 'is_enabled': True, 'control_count': 0, 'style': 1342242944, 'exstyle': 516, 'user_data': 0, 'context_help_id': 0, 'fonts': [<LOGFONTW 'Arial' -13>], 'client_rects': [<RECT L0, T0, R230, B18>], 'is_unicode': False, 'menu_items': [], 'automation_id': '', 'selection_indices': (0, 0)}
而且我知道它和 WindowSpecification 一样(通过使用 control_identifiers()
然后 wrapper_object()
函数发现):
Edit - '' (L251, T523, R485, B545)
['Edit2', 'TunnusEdit']
child_window(class_name="Edit")
如您所见,包装器没有名称 TunnusEdit
。我能知道如何从包装器中获取这些信息吗?
不,您现在必须创建多级 WindowSpecification。我们计划在未来的版本中添加此功能。但不能保证它会很快。参见 issue #570。
EDIT1:如果您正在使用 "win32" 后端(Application()
的默认设置),它仅支持 2 个级别的 WindowSpecification:第一个是顶级 window 和第二个是给任何后代的。所以像 app.MainWindowTitle.TunnusEdit.wrapper_object()
这样的东西会有所帮助。