【问题标题】:Notepad click OK does not work in pywinauto记事本单击确定在pywinauto中不起作用
【发布时间】:2019-11-21 05:53:36
【问题描述】:

在尝试自动化记事本 GUI 时,我无法一次尝试使单击功能起作用。

当我执行第 4 行两次时,单击确定按钮起作用并且“关于记事本”菜单关闭。我尝试对其他菜单中的其他按钮执行相同的操作,似乎只需单击一次按钮即可。这个特定的对话框/按钮没有响应点击功能的原因是什么?

我是运行 Python 3.7 的 Windows 10。

from pywinauto.application import Application
app = Application().start("notepad.exe")
app.UntitledNotepad.menu_select("Help->About Notepad")
app.AboutNotepad.OK.click()

没有产生错误。第4行执行一次没有结果,但是执行两次就可以了。

【问题讨论】:

  • create > wait(delay) > switch (popup) > execute
  • 我遇到了几乎同样的问题,但有一个保存按钮。我通过发送 enter 解决了这个问题: send_keys('{ENTER}') 。您必须从 pywinauto.keyboard import send_keys 添加 。这不完全是一个解决方案,但它确实解决了我的问题。点击两次被证明是不可靠的,所以这不是一个真正的解决方案。

标签: python user-interface ui-automation notepad pywinauto


【解决方案1】:

试试这个代码,它对我有用。

from pywinauto import application
app=application.Application(backend="uia")
try:
    app.start("Notepad.exe")
    app.window().wait('visible')
    app.Dialog.menu_select("Help->About Notepad")
    app.Dialog.OKButton.click()
except TimeoutError as e:
    print(e)

【讨论】:

    猜你喜欢
    • 2013-05-31
    • 1970-01-01
    • 2021-02-23
    • 1970-01-01
    • 1970-01-01
    • 2019-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多