TC官方合作论坛

标题: 在线的快来看看,谢谢 [打印本页]

作者: 26666180    时间: 2013-4-9 00:00
标题: 在线的快来看看,谢谢
天使对象.FindStr(0,0,1280,800,"使者","ffff00-000000",1.0,x,y)
      如果(天使对象.FindStr(0,0,1280,800,"使者","ffff00-000000",1.0,x,y)!=0)
          跳出
      如果结束
    如果(x>=0)
      天使对象.moveto(x+17,y+60)
      help.sleep(100)
      天使对象.leftclick()
      help.sleep(200)
    否则
        辅助.消息框("没找到使者")

    如果结束

请问,第一个如果可以这么写吗??如果不能,请问要怎么写才可以?
我是想让他如果找不到使者两字就"跳出"





作者: 26666180    时间: 2013-4-9 00:01
占楼
作者: IDE2012    时间: 2013-4-9 00:07
TS找字没找到返回值不是空(null)
没找到返回值是-1
作者: IDE2012    时间: 2013-4-9 00:10
如果(天使对象.FindStr(0,0,1280,800,"使者","ffff00-000000",1.0,x,y)<0)
作者: 26666180    时间: 2013-4-9 00:20
可是TS帮助是这么写的
x,y
ts_ret=ts.FindStr(0,0,2000,2000,"长安","9f2e3f-000000",1.0,x,y)
if(x>-1)
     help.messagebox("找到的字:长安")
endif
作者: 26666180    时间: 2013-4-9 00:22
回复 3楼IDE2012的帖子

可是TS帮助是这么写的
x,y
ts_ret=ts.FindStr(0,0,2000,2000,"长安","9f2e3f-000000",1.0,x,y)
if(x>-1)
     help.messagebox("找到的字:长安")
endif
作者: IDE2012    时间: 2013-4-9 00:25
回复 3楼IDE2012的帖子

可是TS帮助是这么写的
x,y
ts_ret=ts.FindStr(0,0,2000,2000,&quo......
26666180 发表于 2013-4-9 0:22:09
这里if的意思是说找到字就弹出辅助框
作者: 26666180    时间: 2013-4-9 00:27
回复 3楼IDE2012的帖子

像你说的TC报错误,我那样写返之没报错
[attach]8565[/attach]
作者: IDE2012    时间: 2013-4-9 00:27
所以是x>-1
ts找字如果找到字的返回值是0
0当然>-1了
作者: 26666180    时间: 2013-4-9 00:30
更不懂了,杯具了............
作者: IDE2012    时间: 2013-4-9 00:32
你的程序也可以这样写:
x,y
天使对象.FindStr(0,0,1280,800,"使者","ffff00-000000",1.0,x,y)
      如果(x=-1)
          跳出
      如果结束
    如果(x>=0)
      天使对象.moveto(x+17,y+60)
      help.sleep(100)
      天使对象.leftclick()
      help.sleep(200)
    否则
        辅助.消息框("没找到使者")
    如果结束
作者: IDE2012    时间: 2013-4-9 00:33
或者
如果(x<0)
作者: IDE2012    时间: 2013-4-9 00:33
这样写的原因是
intX 变参指针:返回X坐标没找到返回-1
作者: 26666180    时间: 2013-4-9 00:34
第一个如果是要表达如果没找到字的,这么一说我傻-,-!!!!!!!!!!!!!
作者: IDE2012    时间: 2013-4-9 00:35
或者简便的写法是:
天使对象.FindStr(0,0,1280,800,"使者","ffff00-000000",1.0,x,y)
    如果(x>=0)
      天使对象.moveto(x+17,y+60)
      help.sleep(100)
      天使对象.leftclick()
      help.sleep(200)
    否则
        辅助.消息框("没找到使者")
跳出
    如果结束
作者: IDE2012    时间: 2013-4-9 00:51
回复 8楼26666180的帖子

如果(天使对象.FindStr(0,0,1280,800,"使者","ffff00-000000",1.0,x,y)<0)
作者: 冷月无痕    时间: 2013-4-9 00:54
第一个如果完全多余
作者: 冷月无痕    时间: 2013-4-9 00:55
天使对象.FindStr(0,0,1280,800,"使者","ffff00-000000",1.0,x,y)
      如果(天使对象.FindStr(0,0,1280,800,"使者","ffff00-000000",1.0,x,y)!=0)
        ......
26666180 发表于 2013-4-9 0:00:19

如果(x>=0)
      天使对象.moveto(x+17,y+60)
      help.sleep(100)
      天使对象.leftclick()
      help.sleep(200)
    否则
                

        跳出    //虽然我不知道你要跳出什么,但是既然你知道这里可以弹出消息框没有找到那么为什么想不到在这里写跳出就是找不到字的时候跳出呢?
       // 辅助.消息框("没找到使者")

    如果结束









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