Как ввести фигурные скобки внутри URL в Pywinauto - PullRequest
0 голосов
/ 08 января 2019

Я пытаюсь ввести URL-адрес в pywinauto, например, «D: \ Eudora (07NOV2008) .mbx», но он пропускает фигурные скобки и вводит как «D: \ Eudora07NOV2008.mbx», как я могу исправить эту проблему.

1 Ответ

0 голосов
/ 08 января 2019

Это не ясно из вопроса, но, похоже, использовался метод .type_keys(). Этот метод пытается проанализировать специальные ключи с именем ключа в скобках {} (например, {ENTER}), полный список описан в документе модуль клавиатуры . Этот метод полезен для специальных комбинаций клавиш для любого окна и / или элемента. Для упомянутого варианта использования код должен выглядеть так:

.type_keys(r'D:{\}Eudora{(}07NOV2008{)}.mbx', with_spaces=True)
# the last argument tells the method to not skip spaces

Для ввода необработанного текста более подходящим методом является .set_edit_text(), который вводит текст как есть. Хотя он не поддерживает синтаксический анализ специальных ключей.

В некоторых редких случаях есть еще один полезный метод .set_value() (только бэкэнд UIA).

Бэкэнд Win32 содержит методы ввода текста без вывода сообщений .send_chars() и .send_keystrokes(), которые не требуют даже перевода элемента в сфокусированное состояние.

Многие из этих методов описаны в Руководстве по удаленному выполнению .

...