используя pywinauto, print_control_identifiers () может работать, но контроль не может быть получен - PullRequest
0 голосов
/ 23 марта 2020

Ниже приведена отладочная информация в IDLE. Я не знаю, почему я не могу получить элемент управления Edit.

testWindow.print_control_identifiers()

Идентификаторы элемента управления:

Edit - '' (L-39588, T-39866, R-39483, B-39843)

['Редактировать']

child_window (auto_id = "1032", control_type = "Edit")

testWindow.Edit.click ()

Traceback (most recent call last):
  File "C:\Users\lpzhao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pywinauto\application.py", line 258, in __resolve_control
    criteria)
  File "C:\Users\lpzhao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pywinauto\timings.py", line 458, in wait_until_passes
    raise err
pywinauto.timings.TimeoutError

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

Traceback (most recent call last):
  File "<pyshell#85>", line 1, in <module>
    testWindow.Edit.click()
  File "C:\Users\lpzhao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pywinauto\application.py", line 379, in __getattribute__
    ctrls = self.__resolve_control(self.criteria)
  File "C:\Users\lpzhao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pywinauto\application.py", line 261, in __resolve_control
    raise e.original_exception
  File "C:\Users\lpzhao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pywinauto\timings.py", line 436, in wait_until_passes
    func_val = func(*args, **kwargs)
  File "C:\Users\lpzhao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pywinauto\application.py", line 222, in __get_ctrl
    ctrl = self.backend.generic_wrapper_class(findwindows.find_element(**ctrl_criteria))
  File "C:\Users\lpzhao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\pywinauto\findwindows.py", line 87, in find_element
    raise ElementNotFoundError(kwargs)
pywinauto.findwindows.ElementNotFoundError: {'backend': 'uia', 'best_match': 'Edit', 'parent': <uia_element_info.UIAElementInfo - '', Edit, 1515078>, 'top_level_only': False}

Кстати, testWindow['Edit'].click() тоже не может работать.

...