TC官方合作论坛

标题: 如何关闭多线程?求助大神! [打印本页]

作者: harvenkiss    时间: 2016-2-13 13:23
标题: 如何关闭多线程?求助大神!
本帖最后由 harvenkiss 于 2016-2-13 13:31 编辑




我想用热键去关闭多线程却关闭不了,仍然在无限循环,我写的肯定不对,求大神指点正确写法!
下面是我写的代码:
变量 线程句柄 = 数组()
功能 热键1_终止()
遍历(i = 0; i < 2; i++)
线程关闭(线程句柄)
结束
结束

功能 开始()
hwndx = 枚举窗口("西楚霸王",0)
字符串分割(hwndx,"|",句柄)
窗口数 = 数组大小(句柄)
遍历(i = 0; i < 窗口数; i++)
窗口句柄 = 句柄
选择(i)
条件 0
条件 1
结束
变量 ret=窗口找图(窗口句柄,252,174,725,392, "rc:验证码.bmp","000000",0.9,0,x,y)
如果(x >= 0 && y >= 0)
线程句柄 = 线程开启("登录验证",窗口句柄)
返回 0
否则
线程句柄 = 线程开启("登录",窗口句柄)
返回 0
结束
结束
功能 登录(窗口句柄)
变量 ret=窗口找图(窗口句柄,824,23,1021,55, "rc:天下.bmp","000000",0.9,0,x,y)
如果(x >= 0 && y >=0)
线程句柄 = 线程开启("主线",窗口句柄)
返回 0
结束
功能 主线(窗口句柄)
循环(真)
代码....................................这里面是代码省略了
结束
结束


作者: 言术    时间: 2016-2-13 13:42
变量 线程句柄 = 数组()
功能 热键1_终止()
    遍历(i = 0; i < 2; i++)//你怎么确定是两个线程?
        线程关闭(线程句柄)
    结束
结束

功能 开始()
    hwndx = 枚举窗口("西楚霸王",0)
    字符串分割(hwndx,"|",句柄)
    窗口数 = 数组大小(句柄)
    遍历(i = 0; i < 窗口数; i++)
        窗口句柄 = 句柄//直接用句柄
        选择(i)
            条件 0//这个没用
            条件 1
        结束//ret也没用
        变量 ret=窗口找图(窗口句柄,252,174,725,392, "rc:验证码.bmp","000000",0.9,0,x,y)
        如果(x >= 0 && y >= 0)
            线程句柄 = 线程开启("登录验证",窗口句柄)//线程句柄是数组
            返回 0//这里返回了,就不会往下执行,程序结束
        否则
            线程句柄 = 线程开启("登录",窗口句柄)//线程句柄是数组
            返回 0///同上
        结束
    结束
结束

功能 登录(窗口句柄)
    变量 ret=窗口找图(窗口句柄,824,23,1021,55, "rc:天下.bmp","000000",0.9,0,x,y)//ret没用
    如果(x >= 0 && y >=0)
        线程句柄 = 线程开启("主线",窗口句柄)//线程开线程,可以考虑直接调用
        返回 0
    结束
结束

功能 主线(窗口句柄)
    循环(真)
        代码....................................这里面是代码省略了
    结束
结束
作者: 18667006365    时间: 2016-2-13 15:59
线程句柄设置成数组




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