2013-03-25 125 views
2

我用下面的代码来连接一个打开的窗口(类型是SunAwtFrame),的确能够连接到它。 但无法点击它的下一个按钮,我的疑问是'下一步'按钮可能驻留在该窗口的框架内。即使我使用'swapy'工具,我也无法浏览控件,实际上并未显示控件。 因此,如果是这种情况,如何切换到帧,然后单击“下一步”按钮。如何点击一个窗口的'下一步'按钮使用python

app2 = application.Application() 

app2.connect(title_re = u'abc') 

dialog = app2.abc 

print dialog 

next =dialog.Next 

print next 

next.Click() 

当我运行上面的代码中,我得到了错误一样,请帮我到这儿来过这个

#Error#:- 

    <pywinauto.application.WindowSpecification object at 0x025F26F0> 
    <pywinauto.application.WindowSpecification object at 0x025FA3B0> 
    next.Click() 
    File "C:\Python27\lib\site-packages\pywinauto\application.py", line 229, in __getattr__ 
    ctrls = _resolve_control(self.criteria) 
    File "C:\Python27\lib\site-packages\pywinauto\application.py", line 788, in _resolve_contro 
l 
    raise e.original_exception 
pywinauto.findwindows.WindowNotFoundError 
+0

您好。我是SWAPY工具的作者。似乎pywinauto无法与您的控件一起使用。请告诉我,SWAPY列表中的按钮控件是灰色还是根本不存在? – SWAPYAutomation 2013-03-25 12:56:13

+0

@SWAPYAutomation嗨,从SWAPY我也无法看到控制列表(所有控件包括'下一个'按钮)..... – kgopi 2013-03-25 13:33:23

+0

不幸的是,pywinauto无法访问非标准控件。您可以尝试点击特定的坐标,或使用备选库。例如Cobra(win LDTP),它也有python模块。 – SWAPYAutomation 2013-03-25 19:53:00

回答

2

好像你一直在试图通过pywinauto自动化非标控制。我建议你通过坐标进行点击,当然如果除按下按钮之外没有其他任务。

dialog.Click(COORDS =(X,Y))

dialog.ClickInput(COORDS =(X,Y))

+0

我目前有[这个问题](http://stackoverflow.com/questions/41675746/windows-gui-automation-on-legacy-app)所以我会尝试你的答案,在此先感谢。 – EndermanAPM 2017-01-16 12:23:29

+0

@SWAPYAutomation你知道为什么在QWidget窗口中没有触发动作吗?这里http://stackoverflow.com/questions/44088772/pywinauto-qwidget-click-trigers-no-action – minghua 2017-05-20 17:18:16

相关问题