TC官方合作论坛
标题:
求教 线程 死循环的问题
[打印本页]
作者:
zhaojiaqing11
时间:
2014-2-13 01:44
标题:
求教 线程 死循环的问题
功能 按钮0_点击()
//这里添加你要执行的代码
循环(真)
变量 x,y
是否找到=图像.区域找色(388,732,885,764,#CA964B,0,x,y)
如果(x > 0)
鼠标.移动(x,y)
鼠标.左键单击(1)
辅助.命令("D:\\1.mp3",false)
如果结束
循环结束
功能结束
空间结束
请问我怎么弄多线程,以至于不在循环中卡死,最好检测到的时候能暂停!求教各位大神!万分感谢!
作者:
cylhb
时间:
2014-2-13 02:13
自己写一个函数。然后把循环部分代码放函数里去。再用线程执行该函数 。比如
功能 死循环体()
循环(真)
。。。
。。。
循环结束
功能结束
然后 在按钮事件里写。线程.开启("空间名.死循环体",参数)
最好把线程句柄保存起来,方便控制
线程句柄=线程.开启("空间名.死循环体",参数)
具体函数的用法参考下帮助手册吧。
作者:
地狱骑士
时间:
2014-2-16 13:46
功能 按钮0_点击()
//这里添加你要执行的代码
循环(真)
变量 x,y
是否找到=图像.区域找色(388,732,885,764,#CA964B,0,x,y)
如果(x > 0)
鼠标.移动(x,y)
鼠标.左键单击(1)
辅助.命令("D:\\1.mp3",false)
如果结束
循环结束
功能结束//
//
//
当你点击了 按钮0
TC就会执行 按钮0点击事件里面的内容,一直到执行完为止。当你在按钮的点击事件里面加入了循环,那他就永远执行不完这个按钮事件了,也就是为什么会出现卡死的原因。
解决的办法就是吧你要执行的内容单独写一个功能,并用线程启动的方式来启动这个功能。别忘了TC的一大优点就是线程。
具体方法
功能 按钮0_点击()
线程.开启("空间名称.功能名称","这里可以为空也可以写传参")
功能结束
功能 功能名称()
循环(真)
变量 x,y
是否找到=图像.区域找色(388,732,885,764,#CA964B,0,x,y)
如果(x > 0)
鼠标.移动(x,y)
鼠标.左键单击(1)
辅助.命令("D:\\1.mp3",false)
如果结束
循环结束
功能结束
作者:
bazzi
时间:
2014-2-21 01:24
可以加sleep
作者:
bazzi
时间:
2014-2-21 01:26
线程的优点本来就是窗口不卡死,
欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/)
Powered by Discuz! X3.1