TC官方合作论坛

标题: 如何读取编辑框内容,在逐一找图按键? [打印本页]

作者: dy喳    时间: 2014-4-6 22:47
标题: 如何读取编辑框内容,在逐一找图按键?
本帖最后由 dy喳 于 2014-4-6 23:12 编辑

如何读取编辑框内容,在逐一找图按键?如图二次密码是按鼠标点击数字来输入的,纯数字的格式没有字符,
在脚本界面设置一个编辑框,让用户把二级密码输入到编辑框内,然后脚本来读取啊
比如输入的是123455,那么脚本怎么来让鼠标 逐一的来点击这些数字呢?
怎么先找1这个图,在去找2等等,找完5 5结束呢?
[attach]15219[/attach]

作者: ivaiyi    时间: 2014-4-6 23:02
没能看懂, 大概意思是通过你在编辑框输入的提示, 进行鼠标操作?
每输入完成一个 操作一次?
如果 是你只输入一次 让TC从头到尾分别操作出来,那就简单了, 通过字符串就可以实现了
作者: dy喳    时间: 2014-4-6 23:12
ivaiyi 发表于 2014-4-6 23:02
没能看懂, 大概意思是通过你在编辑框输入的提示, 进行鼠标操作?
每输入完成一个 操作一次?
如果 是你只输 ...

请看下帖子我已经上传图片了并修正了问题
作者: ivaiyi    时间: 2014-4-6 23:19
直通过找图, 比如你编辑框的内容是 5 7 8 1 2           当然这个长度不固定的, 你可以通过数组来定义, 遍历 一下你的内容, 重新定义你对应的图片,每遍历一次 就点击一位密码. 多少位密码就看长度了.   思路是这样.   不知道有没有更好的方法,我这方法好像有点笨,我也是菜鸟一枚
作者: dy喳    时间: 2014-4-6 23:36
ivaiyi 发表于 2014-4-6 23:19
直通过找图, 比如你编辑框的内容是 5 7 8 1 2           当然这个长度不固定的, 你可以通过 ...

抛弃色偏问题,假如他是纯色,请问用找图好 还是找字啊? 找图好点吧?
作者: ivaiyi    时间: 2014-4-6 23:43
都差不多. 才几个自然数 如果没有色差的话找字应该比找图好写
作者: dy喳    时间: 2014-4-7 13:35
ivaiyi 发表于 2014-4-6 23:43
都差不多. 才几个自然数 如果没有色差的话找字应该比找图好写

弄了半天怎么 来读取每一个啊 这样只能读取第一个数字啊下面的代码,我的意思是怎么把 1 2 3 4 5 5 分离出来啊,真心不懂额额
var 信息组=数组[1],行数,
    字符串.分割(编辑框.获得文本("编辑框0"),"\r\n",信息组)
    数组空间.大小(信息组,行数)

    遍历(i=0;i<行数;i++)
        内容=字符串.截取(信息组,0,1)  //第一个数字 是不是后面要写很多的1,2  2,3.....的啊? 感觉这样好麻烦。。。好像写的不对额
        辅助.消息框(内容)

    遍历结束


作者: 250366688    时间: 2014-4-7 17:54
大漠有个命令,是找多个图片 分别返回 所在坐标的位置, 然后+偏移处理,
至于要输出什么字符串解决呗。
最笨的办法就是最简单的办法。
做成透明图是最稳定的。当然你也可以玩对号入座,用一个 ocr字库命令识别,从左上角开始,读出的文字 ,分别对应9个坐标,如果是单色字推荐这么做,不是的话还是找图稳定,
作者: dy喳    时间: 2014-4-7 18:44
250366688 发表于 2014-4-7 17:54
大漠有个命令,是找多个图片 分别返回 所在坐标的位置, 然后+偏移处理,
至于要输出什么字符串解决呗。
最 ...

我是不会读取每个字啊 读取编辑框内的没数字
比如用户输入 12345,我不会把任命分开来
作者: ivaiyi    时间: 2014-4-8 09:19
dy喳 发表于 2014-4-7 18:44
我是不会读取每个字啊 读取编辑框内的没数字
比如用户输入 12345,我不会把任命分开来 ...

字符串命令里可以分割,

for(i=0;i<长度;i++)
位=字符串.分割(你的12321,i,i+1)
//大漠找图位置点击

endif
作者: 250366688    时间: 2014-4-9 17:22
dy喳 发表于 2014-4-7 18:44
我是不会读取每个字啊 读取编辑框内的没数字
比如用户输入 12345,我不会把任命分开来 ...

字符串分割 有好几种办法。 常用的是 字符串.分割 这个命令 是用来处理比如11|22|33这种
如果你想吧 1234567 分成7个数字
那个首先应该 应该求出字符串的总长度,
然后读取每个位置上的数字,
返回值=字符串.返回字符("abcdefghijklmn",6)
辅助.消息框(返回值)  
命令参照这个。 但是用户的密码不可能只是一位
用遍历语句给他求出来
遍历(i=1;i<字符串长度+1:i++)
返回值=字符串.返回字符("密码段",i)
这里就可以做你要干的事情了,
比如查找字等
但是我忘了具体第一个字符是从长度0还是长度1开始算,这个你自己测试一下,如果是从0开始的话前边的i=1变成i=0,这样子返回值i 就会挨个=返回的字符,然后你就可以根据i的返回值比如 i=”1“,那么命令i&&”.bmp“就可以得到一个字符串叫做 1.bmp,如果用找图那么下边你自己会了吧
遍历结束
作者: 250366688    时间: 2014-4-9 17:39
dy喳 发表于 2014-4-7 13:35
弄了半天怎么 来读取每一个啊 这样只能读取第一个数字啊下面的代码,我的意思是怎么把 1 2 3 4 5 5 分离出 ...

算了直接给你写出来的了 写了一大堆了
变量 x=”密码你懂得“
y=字符串.长度(x)+1
遍历(i=0;i<y;i++)
密码第一个字=字符串.返回字符(x,i)
//这里开始做判断。如果用找图我推荐你,直接把资源里要找到图片 做成1xxx.bmp,2xxx.bmp的格式,如果是文字识别那更简单了直接用i这个变量就行。
密码图片=i&&”xxx.bmp“
//找图不用教吧,这里有图片名字了
//写的严谨的话这一行 判断一下图片的返回变量,看看找到没,如果没找到 另外处理
//到这如果找到了。键鼠操作处理
辅助.等待(500)
//不知道你那游戏输入密码以后有什么特征,如果网络卡了或者什么的这里做个判断是否输入进去了,不做也行
//然后条件吻合的话,程序会去读下一个位置的数,
//一直读到 i=字符串最后一个位置上的数字。
//这里返回到程序开头 遍历()那一行下边那
(如果你想把他分离出来也简单,但是我看你好像是要读出是1还是9然后好找图

遍历结束
作者: dy喳    时间: 2014-4-9 21:00
250366688 发表于 2014-4-9 17:39
算了直接给你写出来的了 写了一大堆了
变量 x=”密码你懂得“
y=字符串.长度(x)+1

不行额,我用消息框弹出了x y i,都试了,都没有正确的弹出如(密码123456)密码。。


变量 x=编辑框.获得文本("编辑框0")
    y=字符串.长度(x)+1
    遍历(i=0;i<y;i++)
        密码第一个字=字符串.返回字符(x,i)
        辅助.消息框(y,"")
        
    遍历结束
作者: 芹菜    时间: 2014-4-9 21:51
本帖最后由 芹菜 于 2014-4-9 21:52 编辑

密码 = 编辑框.获得文本("编辑框0")
    长度 = 字符串.长度(密码)
   
    j=0
    遍历(i=0;i<长度;i++)
        j++
        内容=字符串.截取(密码,i,j)
辅助.消息框(内容,"")

    遍历结束
作者: 250366688    时间: 2014-4-10 09:07
我晕 懒一点都不行啊。代码发来我看看你毛病在哪里,我那些的只是个思路,再说了调试变量 不用消息框,用 调试输出()




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1