значения элементов списка отображаются пустыми для диалогового окна

#python #pywinauto

Вопрос:

Как мы можем захватить текст в приведенном ниже случае с помощью Pywinauto

Я попробовал несколько таких методов, как .window_text , .children_texts() .get_value в директории для объекта «тест»

Отображается значение заголовка, но значения элементов списка отображаются пустыми

 test=app.MainApp.child_window(title="Feature Properties", control_type="Window").child_window(control_type="Header").wrapper_object()

print(test.children_texts())

test=app.MainApp.child_window(title="Feature Properties", control_type="Window").child_window(control_type="ListItem",found_index=0).wrapper_object()

print(test.children_texts())

test=app.MainApp.child_window(title="Feature Properties", control_type="Window").child_window(control_type="Edit",found_index=0).wrapper_object()

print(test.children_texts())
 

выход

 ['Name', 'Value', 'Type']

['', '', '']

[]
 

Технические характеристики

Версия Pywinauto: 0.6.8

Версия и разрядность Python: 3.8.2

Платформа и ОС: windows 10

Прикрепленное изображение окна ежедневника

Прикрепленное изображение UISpy

control_identifiers() для диалогового окна свойств объектов

control_identifiers1

control_identifiers2

Комментарии:

1. Можете ли вы попробовать метод .get_value() для поля редактирования?

2. тест=приложении.MainApp.child_window(title=»название свойства», control_type=»окно»).child_window(control_type=»редактировать»,found_index=0).wrapper_object() печати(тестовые.число()) дает добавленные ошибки [![Ошибка][1]][1] [1]: i.stack.imgur.com/vwgI3.png

3. Что ж, не повезло. Реализация настраиваемой сетки часто является проблемой.

4. Я не знаю, как был разработан пользовательский интерфейс. Как уже было сказано get_value , это код для получения содержимого пользовательского интерфейса. Но я не думаю, что это сработает, так как как в UI Spy, так и Name в атрибуте идентификатора элемента управления пусто. С этим я не думаю, что мы сможем получить контент. Другой способ, который я могу предложить, — это использовать распознавание текста. Получить контент будет легко

5. @ashtav не могли бы вы предоставить более подробную информацию об OCR