Как вы получаете информацию от статического безымянного объекта без заголовка или идентификатора, используя pywinauto? - PullRequest
0 голосов
/ 14 октября 2019

У меня есть программа, которая намеренно заблокировала любой выделенный текст. Они зашли так далеко, что сделали его недоступным даже для пользовательского интерфейса. Я хочу получить текстовую информацию от объектов «Текущая высота» Static - ''. Я вижу текст на интерфейсе, но вы не можете щелкнуть по нему, и с помощью WinSpy он также не дает никакой информации. «Текущая высота» с заголовком - это просто метка («Static3»), но та, что содержит информацию, распознается как «Static4».

Dialog - 'STATE MACHINE'    (L378, T149, R1670, B933)
['STATE (Machine: 5799)', 'Dialog', 'STATE MACHINE']
child_window(title="STATE MACHINE", class_name="#32770")
   |
   | GroupBox - ''    (L388, T200, R1662, B276)
   | ['StateGroupBox', 'GroupBox', 'GroupBox0', 'GroupBox1']
   | child_window(class_name="Button")
   |
   | Static - ''    (L386, T265, R1662, B286)
   | ['Static', 'StateStatic', 'Static0', 'Static1', 'StateStatic0', 'StateStatic1']
   | child_window(class_name="Static")
   |
   | Static - ''    (L386, T341, R1662, B362)
   | ['Static2', 'StateStatic2']
   | child_window(class_name="Static")
   | Static - 'Current height:'    (L625, T512, R700, B525)
   | ['Static3', 'Current height:', 'Current height:Static', 'Current height:Static0', 'Current height:Static1']
   | child_window(title="Current height:", class_name="Static")
   |
   | Static - ''    (L625, T528, R1330, B606)
   | ['Static4', 'Current height:Static2']
   | child_window(class_name="Static")

Из-за программы, являющейся приоритетной, я не могу показатьGUI.

Поскольку print_control_identifiers (), кажется, видит объект как «Static4», есть ли способ для меня использовать его в качестве идентификатора? Кажется, я не могу использовать:

label = win.child_window(title="static4", class_name="Static")

Если бы я попытался:

label.print_control_identifiers()

Я получил бы элемент не найден.

enter image description here

1 Ответ

0 голосов
/ 16 октября 2019

Согласно элементам печати выше, нет элемента с названием «static4», поэтому выдается ошибка. Похоже, что заголовок для всех перечисленных элементов: ''.

. Правильный способ получить элемент:Для справки см. здесь , где говорится о Marginsinches.

...