吾八哥学Pywinauto(二):使用Pywinauto操作WinForm窗口
前言
吾八哥我今天来学习使用Pywinauto操作WinForm窗口的方法,例如窗口的最大化,最小化,还原窗口状态,关闭等等。学习某一个库,我们要习惯性的去看对应的文档,Pywinauto的文档地址为:https://pywinauto.readthedocs.io/en/latest/HowTo.html,里面提到了如何去获取一个对话框窗口(How to specify a dialog of the application),方法如下:
dlg = app.Notepad
或者
dlg = app['Notepad']
获取顶层窗口的方法为:
dlg = app.top_window()
至于dlg下面的操作具体怎么做,官方文档也告诉我们了,在“handleprops”模块里面,这个就大家自己去看了!
实例
现在来具体写点代码实现吧,主要是用来操作窗口的,Python代码如下:
import pywinauto #启动记事本应用程序 app = pywinauto.Application().start("notepad.exe") #取得当前程序对话框窗口 dlg = app.Notepad print("默认状态值:", dlg.GetShowState()) dlg.Minimize() print("最小化状态值:", dlg.GetShowState()) dlg.Maximize() print("最大化状态值:", dlg.GetShowState()) dlg.Restore() print("还原到默认状态值:", dlg.GetShowState()) #写入一些测试文本内容 dlg.Edit.type_keys("Hello,Pywinauto!学Python就上学Python网Http://www.XuePython.wang", with_spaces = True) #关闭 dlg.Close()
具体的操作还是比较简单的,主要是如何去找窗口,这个时候我们可以接触spy++哦!另外可以再试试app["xxx"]["xxx"]找对象的方法哦!
上面的代码运行后效果如下: