【问题标题】:Control a hidden menu behind a button with pywinauto使用 pywinauto 控制按钮后面的隐藏菜单
【发布时间】:2014-11-26 01:43:29
【问题描述】:

我对 pywinauto 很陌生,我已经很喜欢它了。但我有一个问题:

我想用 pywinauto 自动化一个旧软件程序,并且可以控制大部分按钮。但是当点击某个按钮时,会出现一个带有图标的菜单(不是windows风格的菜单,而是自定义菜单)。该按钮的名称是“Toolbar2”所以我猜它不是一个普通的按钮。 使用此代码,我可以单击我想要的按钮。当我使用“ctrl.Click() 时,按钮没有被点击,我需要使用 ClickInput()。使用普通按钮我可以使用 Click()。

w_handle = pywinauto.findwindows.find_windows(title=u'P2-NLTlog013', class_name='TfrmDisplayFilteredData')[0]    
window = pwa_app.window_(handle=w_handle)
window.Click()
ctrl = window['ToolBar2']
ctrl.ClickInput()

我现在的问题是:如何获取隐藏菜单项的名称并单击它们。我已经使用了这段代码,但是他给出了一个“MatchError”。

window = pwa_app.Window_(best_match='ToolBar2', top_level_only=True).ChildWindow(best_match='PopupMenu').Click() 

window.Click()

我不知道该软件是用什么语言编写的...

提前致谢, 弗雷德

【问题讨论】:

    标签: button click toolbar pywinauto


    【解决方案1】:

    您可以通过window.Menu() 获取菜单对象,然后尝试通过menu.Items() 访问子项 有用的方法:menu_item.Index()menu_item.SubMenu()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-12
      • 1970-01-01
      • 1970-01-01
      • 2021-06-14
      相关资源
      最近更新 更多