我正在尝试使用pywinauto在python中自动化自制GUI。
我正在使用app = Application().start(...)
启动应用程序,并使用dlg = app.top_window_()
获取窗口。
在下一步中,我想双击列表中的项目。但是我不知道怎么做。 我试图使用Inspect.exe。通过单击“导航到子项”,我得到没有名称的列表。再次单击“导航到子项”会显示我要单击的项目的名称。
那么,我该如何参考这个项目?
我想过dlg.itemname.double_click(button='left')
之类的东西?我只能找到他们按菜单条目的例子。
答案 0 :(得分:0)
根据您的描述,我可以假设您使用Application(backend="uia")
(或必须使用),因为Inspect.exe
使用了自动化技术,该技术由pyuinauto中的UIA后端支持。
是的,你几乎可以双击。这应该是这样的:
dlg.itemname.double_click_input(button='left')
# or
dlg.itemname.click_input(button='left', double=True)
我怎么知道?将项目检测为单独的控件是UIA后端的典型选择。
对于默认的Win32后端(您可以在Spy ++工具中看到的内容),列表视图或列表框始终只有包装方法可以访问的虚拟项目,而不是单独的控件。