|
发表于 2012-11-26 15:10:40
|
显示全部楼层
回复 1楼小白丶的帖子
- #import "dm.dmsoft" dm
- 空间 测试
- int s1,s2,s3,s4//第1-4个按钮对应的字母
- 整型 线程句柄
- 功能 逻辑型 找图片(字符型 param1)
- 整型 窗口句柄 = 窗口.找到窗口("九阴真经")
- 循环(真)
- //再次分割,得到图片序号以及图片坐标
- string[] rrs=string[1] //需要先初始化一次
- 辅助.等待(10)
- string str1=param1
- 辅助.等待(10)
- bool isk=str.split(str1,",",rrs)
- 辅助.等待(10)
- 整型 dm_ret = dm.CmpColor(转换.字符型转整型(rrs[1],0),转换.字符型转整型(rrs[2],0),rrs[3],0.9)
- 辅助.等待(100)
- 如果( dm_ret = =0 )
- 辅助.等待(10)
- 否则
- //辅助.消息框("aaa"+rrs[0])
- 窗口.提交按键(窗口句柄,转换.字符型转整型(rrs[0],0))
- 辅助.等待(380)
- 如果结束
- 循环结束
- 返回 真
- 功能结束
- //定义默认空间
- 功能 整型 注册()
- 辅助.注册插件("rc:\\dm.dll",真)
- 辅助.是否注册("dm.dmsoft")
- 辅助.获取资源路径("rc:")
- 系统.设置路径(辅助.获取资源路径("rc:"))
- 返回 0
- 功能结束
- 功能 逻辑型 开始_点击()
- //这里添加你要执行的代码
- 返回 真
- //函数返回语句
- 功能结束
- 功能 逻辑型 退出_点击()
- //这里添加你要执行的代码
- 辅助.退出()
- 返回 真
- //函数返回语句
- 功能结束
- 功能 逻辑型 按钮0_点击()
- 测试.注册()
- //这里添加你要执行的代码
- //说明:支持多张图片(图片与图片中间使用 竖线隔开)和根据四角的颜色判断是否为透明图
- //原理:首先获得页面上四个按钮的位置,将四个按钮根据图号获得对应的按键,然后将X和Y传给线程去判断是否被遮挡住,遮住则按键
- 字符型 图号
- 辅助.等待(10)
- 图号 = dm.FindPicEx(0,0,2000,2000,"a.bmp|c.bmp|d.bmp|i.bmp|j.bmp|k.bmp|l.bmp|o.bmp|p.bmp|s.bmp|x.bmp|z.bmp","000000",0.9,0)
- 辅助.等待(10)
- string[] rstr=string[1] //需要先初始化一次
- 辅助.等待(10)
- string sourcestr=图号,splitstr="|"
- 辅助.等待(10)
- bool isok=str.split(sourcestr,splitstr,rstr)
- 辅助.等待(10)
- int c1
- array.size(rstr,c1)
- 如果(c1>1)
- 辅助.消息框(图号)
- string[] s11=string[1] //需要先初始化一次
- string[] s22=string[1] //需要先初始化一次
- string[] s33=string[1] //需要先初始化一次
- string[] s44=string[1] //需要先初始化一次
- 辅助.等待(10)
- string s1s=rstr[0]
- string s2s=rstr[1]
- string s3s=rstr[2]
- string s4s=rstr[3]
- string spstr=","
- 辅助.等待(10)
- str.split(s1s,spstr,s11)
- str.split(s2s,spstr,s22)
- str.split(s3s,spstr,s33)
- str.split(s4s,spstr,s44)
- s11[1]=测试.isDownKey(convert.strtoint(s11[1],0))
- s22[1]=测试.isDownKey(convert.strtoint(s22[1],0))
- s33[1]=测试.isDownKey(convert.strtoint(s33[1],0))
- s44[1]=测试.isDownKey(convert.strtoint(s44[1],0))
- s11[2]=测试.isYKey(convert.strtoint(s11[2],0))
- s22[2]=测试.isYKey(convert.strtoint(s22[2],0))
- s33[2]=测试.isYKey(convert.strtoint(s33[2],0))
- s44[2]=测试.isYKey(convert.strtoint(s44[2],0))
- //根据坐标寻找颜色
- string color1 = dm.GetColor(转换.字符型转整型(s11[1],0),转换.字符型转整型(s11[2],0))
- string color2 = dm.GetColor(转换.字符型转整型(s22[1],0),转换.字符型转整型(s22[2],0))
- string color3 = dm.GetColor(转换.字符型转整型(s33[1],0),转换.字符型转整型(s33[2],0))
- string color4 = dm.GetColor(转换.字符型转整型(s44[1],0),转换.字符型转整型(s44[2],0))
- string picChar1 = 测试.picNumChar(转换.字符型转整型(s11[0],0))
- string picChar2 = 测试.picNumChar(转换.字符型转整型(s22[0],0))
- string picChar3 = 测试.picNumChar(转换.字符型转整型(s33[0],0))
- string picChar4 = 测试.picNumChar(转换.字符型转整型(s44[0],0))
- string param1 = picChar1+","+s11[1]+","+s11[2]+","+color1
- string param2 = picChar2+","+s22[1]+","+s22[2]+","+color2
- string param3 = picChar3+","+s33[1]+","+s33[2]+","+color3
- string param4 = picChar4+","+s44[1]+","+s44[2]+","+color4
- help.messagebox(param1)
- help.messagebox(param2)
- help.messagebox(param3)
- help.messagebox(param4)
- 线程句柄=线程.开启("测试.找图片",param1)
- 线程句柄=线程.开启("测试.找图片",param2)
- 线程句柄=线程.开启("测试.找图片",param3)
- 线程句柄=线程.开启("测试.找图片",param4)
- 如果结束
- 返回 真
- 功能结束
- //根据分辨率判断是否是下面的按键,如果是的话,X轴坐标偏移15像素
- function string isDownKey(int x)
- if(x<700)
- return convert.inttostr(x+21)
- else
- return convert.inttostr(x)
- endif
- endfunction
- //根据分辨率判断是否是下面的按键,如果是的话,X轴坐标偏移15像素
- function string isYKey(int x)
- if(x>390)
- return convert.inttostr(x+10)
- else
- return convert.inttostr(x)
- endif
- endfunction
- //通过传入图号返回对应的键码
- function string picNumChar(int picNum)
- if(picNum==0)
- return "65"
- endif
- if(picNum==1)
- return "67"
- endif
- if(picNum==2)
- return "68"
- endif
- if(picNum==3)
- return "73"
- endif
- if(picNum==4)
- return "74"
- endif
- if(picNum==5)
- return "75"
- endif
- if(picNum==6)
- return "76"
- endif
- if(picNum==7)
- return "79"
- endif
- if(picNum==8)
- return "80"
- endif
- if(picNum==9)
- return "83"
- endif
- if(picNum==10)
- return "88"
- endif
- if(picNum==11)
- return "90"
- endif
- endfunction
- 空间结束
- //空间结束语句
复制代码 |
|