正在等待应用程序窗口:pywinauto.timings.WaitUntilPasses在Python中

2024-10-03 09:15:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在pywinauto中使用waituntilpasses给应用程序一个打开新窗口的时间。我用SWAPY来识别窗户的细节。在

为了测试,我手动打开子窗口,因此WaitUntilPasses应该立即看到这一点,但是它没有。在

语法显示正常,因为我可以找到并打印find_windows的输出,如下所示:

xx = pywinauto.findwindows.find_windows(
    title=u'Choose template', class_name='#32770')[0]
print (xx)

这给出了789646的响应

但是在WaitUntilPasses命令中:

^{pr2}$

总是超时。我看不出语法的问题,我已经尝试了我能想到的每一种排列。 如有任何提示,我们将不胜感激。在


Tags: 应用程序titlewindows时间语法手动find细节
1条回答
网友
1楼 · 发布于 2024-10-03 09:15:52

pywinauto.timings.WaitUntilPasses等待第三个参数中的函数,而不是函数执行的值(在您的例子中)。在

修复-转换您的签入lambda函数:

pywinauto.timings.WaitUntilPasses(20, 0.5, lambda: pywinauto.findwindows.find_windows(title=u'Choose template', class_name='#32770')[0])

但我赞成你把检查放在一个单独的函数里:

^{pr2}$

相关问题 更多 >