如何单脚本操作多窗口
比如有3个窗口,需要在一个脚本内分别控制,以达到多开的目的.
如果用我的插件如何实现呢? 其实很简单
比如有3个窗口同时操作.
那么代码如下
// 三个句柄(这里随便写的值,自己更换)Dim hwnd_all(3)hwnd_all(0) = 11111hwnd_all(1) = 22222hwnd_all(2) = 33333// 声明3个对象(有几个窗口声明几个)Dim dm_all(3)// 分别创建对象Set dm_all(0) = createobject("dm.dmsoft")Set dm_all(1) = createobject("dm.dmsoft")Set dm_all(2) = createobject("dm.dmsoft")// 声明公共对象,用于切换Set dm = nothinghwnd = 0// 调试用,打印下版本,好习惯TracePrint dm_all(0).Ver()// 分别绑定窗口For i = 0 To 2 Call 切换对象(i) dm_ret = dm.BindWindow(hwnd, "dx", "dx", "dx", 0) // 检测返回值 If dm_ret = 0 Then MessageBox "绑定失败" EndScript End IfNext// 分别设置路径字库等For i = 0 To 2 Call 切换对象(i) dm.SetPath "c:\test" dm.SetDict 0,"test.txt"Next// 脚本主循环Do For i = 0 To 2 Call 切换对象(i) Call 打怪() NextLoopSub 切换对象(index) Set dm = dm_all(index) hwnd = hwnd_all(index) // 如果还需要切换窗口也可以在这里操作End SubSub 打怪() dm_ret = dm.FindStr(0, 0, 200, 200, "怪物名字", "ffffff-000000", 1.0, x, y) If x > 0 Then // 开始打怪 // 以下省略,和单开一样的写法 End IfEnd SubSub OnScriptExit() // 分别解绑窗口 For i = 0 To 2 Call 切换对象(i) dm_ret = dm.UnBindWindow() NextEnd Sub