2017-04-12 49 views
1

我自动化的应用程序(pywinauto版本0.6.2),其中I:检查对话框是否关闭的快速方法?

  • 搜索记录
  • 打开一个对话框
  • 进行更改
  • 单击OK按钮
  • 等待对话框关闭
  • 关闭时,搜索下一条记录,重复

在“等待对话框关闭”一步我使用:

dlg.wait_not("visible", timeout=60) 

这工作的大部分时间,但有时它不仅没有检测到的对话框已经关闭,但它也没有按在60秒的时间内似乎没有做任何事情。

有没有更好的方法来检测窗户的关闭?

+0

它多久重现一次?窗口是否真的关闭了,但wait_not仍在运行? –

+1

我还没有任何公司统计数据,但我可以尝试收集它们。昨天,我跑了10笔交易,并没有检测到7号关闭的对话框 - 对话框关闭了,但代码就好像它正在等待。然后我退出应用程序,重新对其他11个事务处理,并且运行没有问题。很难预测什么时候会发生。 – MidnightThoughtful

+0

嗯......有趣。你使用哪个后端? '“win32”'或'“uia”'? –

回答

1

定时错误在pywinauto 0.6.3中修复。请用pip install -U pywinauto进行更新。方法wait_not也受到影响。