winex库是win库的扩展,主要用作外部窗口的控制,下面是常用的一些操作
//winex是win库扩展,结合win库实现外部窗口操作
import winex
import process
process.executeWaitInput("notepad.exe")
/*窗口查找函数{{*/
//遍历所有顶层窗口
for hwnd,title,threadId,processId in winex.each( "", ".*" ) {
//以标题来判断窗口
if string.find(title,"记事本") win.msgbox(title,hwnd)
}
//以下窗口查找,支持模糊匹配,查找条件基本一致(窗口句柄,窗口文本,类名,控件id等)
if winex.findExists(,,"Notepad") win.msgbox("记事本窗口存在")
//winex.find 查找窗口
//winex.findEx 查找控件
//winex.findActivate //查找并前置窗口(最小化无效)
//winex.waitActive 等待窗口激活
//winex.waitStyle 等待指定窗口样式出现
//winex.waitEnabled 等待指定窗口启用
//winex.waitVisible 等待指定窗口显示
var $hwnd,$hEdit = winex.wait(,,"Notepad","Edit")
/*}}*/
win.setForeground($hwnd)
win.delay(2000)
/*以消息形式发送文本{{*/
//发送WM_SETTEXT消息,会清除之前的会文本,焦点不会变化
winex.setText($hwnd,"我是新窗口标题")
winex.setText($hEdit,'你好啊,后台发送可以吗\r\n')
//发送EM_REPLACESEL消息
winex.sendString('当然是可以的\r\n',$hEdit)
//发送WM_CHAR消息
winex.say('我还是一个个打字吧\r\n',$hEdit)
/*}}*/
//向窗口发送BM_CLICK点击消息,通常是按钮控件
winex.click($hEdit)
//关闭窗口
//winex.close($hwnd)
————————————————
版权声明:本文为CSDN博主「风行者_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_60842374/article/details/120082661