TC官方合作论坛
标题:
又来问2个问题了哈~~~~大侠们接招哈,给采纳哦
[打印本页]
作者:
f45601535
时间:
2012-9-4 21:23
标题:
又来问2个问题了哈~~~~大侠们接招哈,给采纳哦
1、我想问在一个功能里面定义 X坐标和Y坐标,我多次使用会不会造成混乱情况?
例如:功能 逻辑型 跑镖()
整型 X
整型 Y
dm.FindPic(0,0,2000,2000,"c:\\1.bmp","000000",0.9,0,X,Y) //找图
dm.MoveTo( X,Y) //鼠标移动
dm.FindPic(0,0,2000,2000,"c:\\1.bmp","000000",0.9,0,X,Y) //再次找图
dm.MoveTo( X,Y) //鼠标移动
我二次移动鼠标位置 着二次鼠标移动不会造成混乱吧~~~我个人感觉应该不会~~~嘿嘿是不是~
2、着个问题比较重要
假如我从A点移动到B点,着之间可能需要2分钟,但是有另外一个东西跟着我,它可能会在着2分钟时间随时原地停留,但是系统会提示。
我的问题是:我建立个字库 把系统提示的字输入进字库里面,然后用OCR来找,如果找到人物也立刻停止移动,
难点是:系统提示的时间有随机性!无法把握,如果我用循环来找字,不知道这个思路行不行
举例:
功能 逻辑型 跑镖()
[url=]鼠标.移动(
500
,10
00
)[/url] //着是A到B的移动坐标点
循环(真)
是否找到=dm.FindPic(0,0,2000,2000,"c:\\1.bmp","000000",0.9,0,X,Y) //这里设定到达目的后有一个特殊的图片,查找这个表示已经到达
如果(是否找到>=0)
跳出 //已经到达目的 跳出循环
否则 //进入另一个循环
循环(真)
//这里设置字库 和使用字库 我就不写了
字符型 字符串=dm.Ocr(0,0,2000,2000,"9f2e3f-000000",1.0) //找系统提示目标停止移动
如果(字符串。长度(字符串)>0)
dm.KeyPress(13) //假设着个按键能使人物停止
[url=]辅助.等待(
5000
)[/url] //着个是目标停止时间
[url=]鼠标.移动(
500
,10
00
)[/url] //从新鼠标移动目的地
继续 //着个继续 我也是需要执行第一个循环。就是不知道执行的不是第一个循环?
否则
继续 // 我这里有个疑问 :着个继续是继续第一个循环 还是第儿个循环?我需要是的着个继续是执行的第一个循环。
如果结束
循环结束
如果结束
循环结束
请各位大侠参谋下我的目的是否能达到:从A到达B,并且时时检测系统提示 跟随我的东西 的否停止,如果停止人物随即也停止,然后在继续到达B点 知道到达B点结束。
希望各位好好看看哈~~~
作者:
梦里只影向你
时间:
2012-9-4 21:40
继续(continue)语句的是跳过循环体中剩余的语句而强行执行下一次循环。 好像不能跨循环吧
你循环里面 先找是否到终点,到了就跳出,再找 是否停下来,找一次,没停下来就重新循环,停了就相应操作,而不用把找停下来的放进一个循环里面,或者你开个线程,专门检测
作者:
f45601535
时间:
2012-9-4 21:54
回复
2楼
梦里只影向你
的帖子
其实我也想过专门开一个线程专门检测,不过遇到技术问题,不知道这样怎么做,是单独在创建个 功能吗?要是单独检测的话,如果检测到怎么传递给正在执行任务的程序呢?
还有 您可能没太看清~~~我第一个循环 找到后直接跳出
而第2个循环在第一个循环里面的否则内 按数学方式表达是 :第一个循环>第儿个循环。我第一个跳出是跳出的第一个循环相对来说也不会执行第2个循环了~~~
请你在好好看看
作者:
f45601535
时间:
2012-9-4 22:10
不对不对,我自己发现 继续的循环不是我想要的循环~~~~~~
作者:
f45601535
时间:
2012-9-4 22:24
我自己又想出个办法:看看这样行不 请大家来看下
功能 逻辑型 跑镖()
[url=]鼠标.移动(500,1000)[/url] //着是A到B的移动坐标点
循环(真)
是否找到=dm.FindPic(0,0,2000,2000,"c:\\1.bmp","000000",0.9,0,X,Y) //这里设定到达目的后有一个特殊的图片,查找这个表示已经到达
如果(是否找到>=0)
跳出 //已经到达目的 跳出循环
如果结束
//这里设置字库 和使用字库 我就不写了
字符型 字符串=dm.Ocr(0,0,2000,2000,"9f2e3f-000000",1.0) //找系统提示目标停止移动
如果(字符串。长度(字符串)>0)
dm.KeyPress(13) //假设着个按键能使人物停止
[url=]辅助.等待(5000)[/url] //着个是目标停止时间
[url=]鼠标.移动(500,1000)[/url] //从新鼠标移动目的地
如果结束
循环结束
这里我只设定一个循环 和2个如何 ,我的思路是 “要是如果条件不满足直接进入下一个如果还不满足就继续循环,知道第一个如果跳出为止~着个思路对吗?
作者:
shine宝宝
时间:
2012-9-4 22:32
我觉得可以。。
作者:
梦里只影向你
时间:
2012-9-4 22:37
对,就是这个思路,你试试看,在游戏里
作者:
f45601535
时间:
2012-9-4 23:04
回复
7楼
梦里只影向你
的帖子
谢谢梦里哥的肯定,我想私下问下你:”如果语句“没达到执行要求是不是就不执行着个如果语句了,而是继续执行这个如果结束以后的语句?
作者:
梦里只影向你
时间:
2012-9-4 23:46
回复
8楼
f45601535
的帖子
对,单个的如果语句,如果没否则,则直接跳到,如果结束以后的语句
欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/)
Powered by Discuz! X3.1