Что такое CLASS: wxWindowNR в AutoIt и как я могу щелкнуть элемент управления?

Я использую AutoIt, чтобы попытаться автоматизировать использование программы под названием PhotoZoom 4. Я столкнулся с проблемой, когда мне нужно ввести текст в поле, где это класс и экземпляр: [CLASS: wxWindowNR; ЭКЗЕМПЛЯР: 8]

Я безуспешно пробовал следующее (каждая строка - это отдельная попытка):

ControlSetText($batchWindowTitle2, "", "[CLASS:wxWindowNR; INSTANCE:8]", '800')

ControlCommand($batchWindowTitle2, "", "[CLASS:wxWindowNR; INSTANCE:8]", "AddString", '800')

ControlClick($batchWindowTitle2, "", "[CLASS:wxWindowNR; INSTANCE:8]", "left", 1, 32, 12)
Send("800")

Я ожидал, что ControlCommand или ControlSetText хотя бы сработают, но этого не произошло. Я тоже искал в Google эту проблему, но я буквально не смог найти никаких ссылок на "wxWindowNR" где-либо в Интернете. Прикреплю фото управления.

Если вы также не знаете, что такое wxWindowNR (я полагаю, что вы не знаете, так как я не видел его нигде в Интернете), как лучше всего автоматизировать нажатие и ввод текста в поле? Я думал, ControlClick справится ...

Элемент управления, с которым я работаю


person Ken    schedule 30.05.2012    source источник
comment
Вы пытались циклически перемещаться по табуляции (например, send("{Tab 5}")) по всем элементам управления, пока не дойдете до нужного уровня в графическом интерфейсе, а затем использовали простой send()? Ваш графический интерфейс, вероятно, предотвращает автоматизацию и проверяет фактические состояния аппаратного обеспечения, действительно ли нажата ваша мышь или клавиатура. Этим трудно манипулировать. И работает ли GUICtrlSetState(..., $GUI_FOCUS)? Вам нужно #include <GUIConstantsEx.au3>.   -  person Samoth    schedule 31.05.2012
comment
Отлично, трюк с вкладкой сработал! Иногда нужно так думать попроще ... спасибо!   -  person Ken    schedule 01.06.2012


Ответы (1)


«Цикл табуляции» (например, send("{Tab 5}")) по всем вашим элементам управления, пока вы не попадете туда в своем графическом интерфейсе, а затем используйте простой send().

person Samoth    schedule 11.06.2012