TC官方合作论坛

标题: 求教线程返回值问题 [打印本页]

作者: laosanwangluo    时间: 2014-10-22 10:32
标题: 求教线程返回值问题

功能 开始_点击()
          线程.开启("KwMusic.遍历找图任","67,392,350,562")
         鼠标.移动(任X&任Y)//////////////////////////这里是错误的 要这么写?
功能结束


功能 遍历找图任(开X,开Y,结X,结Y)   
    任X,任Y,开X,开Y,结X,结Y
    遍历(j=0;j<30;j++)
        图像序号=图像.找图(开X,开Y,结X,结Y,"rc:\\任.bmp",#000000,1.0,0,任X,任Y)
        如果(任X>0)  
            跳出
        否则
            辅助.等待(300)
        如果结束
    遍历结束
    返回 (任X&任Y)///////////////////////这里的返回要怎么写呢?
功能结束


作者: zsconverse    时间: 2014-10-22 10:42
鼠标移动(任x,任y)
作者: laosanwangluo    时间: 2014-10-22 10:46
返回(任X&任Y)运行到这里就崩溃了错误的
作者: yuduo1983    时间: 2014-10-22 11:10
功能 开始_点击()

    线程.开启("KwMusic.找图","")

功能结束

功能 找图()  

    遍历找图(67,392,350,562,"rc:\\任.bmp")

功能结束

功能 遍历找图(开X,开Y,结X,结Y,图片)   

    任X,任Y,开X,开Y,结X,结Y
    遍历(j=0;j<30;j++)

        图像序号=图像.找图(开X,开Y,结X,结Y,图片,#000000,1.0,0,任X,任Y)
        如果(任X>0)
            鼠标.移动(任X,任Y)
            调试输出(任X &","& 任Y)
            返回 真
        否则
            返回 假
        如果结束
    遍历结束

功能结束

大致这个意思
作者: yuduo1983    时间: 2014-10-22 11:10
本帖最后由 yuduo1983 于 2014-10-22 11:12 编辑

上面那个
作者: sziamchl    时间: 2014-10-22 11:25
返回 (任X&任Y)///////////////////////这里的返回要怎么写呢?

TC好像不能返回2个值吧,只能返回一个值的。如 返回 任X  这样写
但要返回值,调用功能的时候不能这样写线程.开启("KwMusic.遍历找图任","67,392,350,562")
如果必须要返回2个值,要想其它方法,如:可以把任x,任y这2个变量设为全局变量。

鼠标.移动(任X&任Y)//////////////////////////这里是错误的 要这么写?
这个2楼告诉你了

另外,像你上面的功能,这样写是达不到效果的,不要用线程开启方法,应该这样写
KwMusic.遍历找图任(67,392,350,562)

他和线程开启的方法相同的就是:都会执行遍历找图任这个功能
不同的是:线程开启这行语句执行后,马上就执行下一个语句鼠标移动了,根本不用等遍历找图任执行完毕
而我上面写的调用语法,会等待遍历找图任功能执行结束了,才会运行下一条语句

作者: sziamchl    时间: 2014-10-22 11:43
空间 KwMusic
//默认空间
任X,任Y   //定义全局变量


//开始按钮_点击操作
功能 开始_点击()
    是否找到图=KwMusic.遍历找图任(67,392,350,562)
    如果(是否找到图)
        鼠标.移动(任X,任Y)
    如果结束
功能结束


功能 遍历找图任(开X,开Y,结X,结Y)   
    //任X,任Y,开X,开Y,结X,结Y    /////这里不必定义变量
    遍历(j=0;j<30;j++)
        图像序号=图像.找图(开X,开Y,结X,结Y,"rc:\\任.bmp",#000000,1.0,0,任X,任Y)
        如果(任X>0)  
            返回 真
        否则
            辅助.等待(300)
        如果结束
    遍历结束
   
功能结束



//退出按钮_点击操作
功能 退出_点击()
   
    辅助.退出()
功能结束

空间结束
//空间结束语句
作者: q273814    时间: 2014-10-23 09:29
本帖最后由 q273814 于 2014-10-23 09:30 编辑


1.你上面报错的原因 任X 和任Y是没有申明的 程序是不认识这2个玩意的 所以你让鼠标移动到那个位置 它咋晓得你那是写的个神马
2.就算你申明了任X和任Y 也是不能正常运行的 你在上面线程调用了找图线程里还在找 代码就执行到下面鼠标移动了 找都没找到就移动 顶多给你鼠标移动到屏幕左上角
3.建议把鼠标点击放到那个线程里的找图里 或者把找图做个单独的功能 然后在线程里调用找图并移动鼠标
4.资源文件rc:\\xxx.xxx  能否把\\去掉 这个不需要的
5.返回只能返回1个参数 你可以返回 任X & "," & 任Y 这样的格式 : 123,123 然后接收后分割出来

作者: 这论坛不错    时间: 2014-10-23 18:08
返回后面不要带括号,括号去掉




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