【发布时间】:2021-09-16 22:20:32
【问题描述】:
我正在使用 pywinauto 的最新版本(迄今为止);并且还使用 PyInspect (uia) 来识别控件。
我正在对应用程序进行自动化控制,其中一部分过程是在触发窗口从菜单选择(如编辑->设置)出现后弹出的窗口上选中几个框。
问题是,pywinauto 似乎无法检测到新窗口。我看到成功打开;并且可以在 PyInspect 中将窗口和元素视为应用程序的子(子?)窗口。
我尝试过等待方法,认为自动化发生得太快了——但无济于事。类似:
mysettings = app['app-name'].child_window(title_re="my target settings window", class_name="#32770").wait('exists', timeout=10)
这只会超时。如果我打印控件标识符,则永远不会包含“我的目标设置窗口”。
app['app-name'].print_control_identifiers()
我还在 top_window 上尝试了 set_focus .. 也没有用。我的结论是 pywinauto 无法检测到它的存在。对此有什么想法吗?
【问题讨论】:
-
您可以尝试使用 Autoit 来完成该任务。如果可行,也许您可以在 Python 中调整解决方案。
-
到目前为止一切正常。我相信这只是我学习程序的一个障碍,而不是程序完成自动化的能力。我最终能够解决这个问题,请参阅下面的答案。
标签: python automation pywinauto