TC官方合作论坛

标题: 怎么向线程传递 参数 [打印本页]

作者: 梧桐树下雨    时间: 2012-2-26 20:32
标题: 怎么向线程传递 参数
c= convert.strtoint(edit.gettext("edit0"),0)
help.messagebox(convert.inttostr(c))
int[] b=int[c]
int[] n=int[c]
int ProcessHwnd

int i = c-1

while(i>=0)

        ProcessHwnd=process.openprocess(browse.gettext("path0"))

        help.sleep(200)
        b = window.getfoucswndhand()
        window.setwindowmin(b)

        i=i-1
        
endwhile

通过 进程启动  获取  窗口句柄 数组  我想  就写一个线程  之后 向线程传递 窗口句柄   。。。   tc  能解决么  或者有什么好的方法啊
作者: cylhb    时间: 2012-2-26 20:45
线程无法传递参数,。只能通过全局变量来获取
作者: 梧桐树下雨    时间: 2012-2-26 20:52
要是我想 多开  比如开5个   那就得 写5个线程函数 ?
作者: 梧桐树下雨    时间: 2012-2-26 20:53
回复 2楼cylhb的帖子

要是我想 多开  比如开5个   那就得 写5个线程函数 ?
作者: cylhb    时间: 2012-2-26 20:59
看你想传什么进去了,比如:
你定义一个全局变量

整型 血量

然后再你的线程函数里面定义一个
整型 子线程血量
把这个全局变量赋给局部变量
子线程血量=血量
作者: 梧桐树下雨    时间: 2012-2-26 20:59
回复 2楼cylhb的帖子

  比如我写了一个 线程 函数    我在 按钮点击 调用了 一个循环  在循环内调用线程开启 开启多个 同一个线程函数    是我开启多个线程呢 还是 就开了一个线程呢
作者: cylhb    时间: 2012-2-26 21:05
线程函数可以一样。
你开了多少线程,取决于你的  线程.开启   的次数
线程.开启   返回的是线程的句柄,你可以把句柄保存起来,就知道了。关闭线程也需要这个线程句柄。
作者: 梧桐树下雨    时间: 2012-2-26 21:07
回复 5楼cylhb的帖子

这个 我想到了  可是 我传的是一个句柄的数组   大小不确定 没办法定义成全局函数   tc 能在 方法内声明静态变量么
作者: cylhb    时间: 2012-2-26 21:15
整型[] 句柄    //全局数组


然后再初始化函数里面写
句柄=整型[5]  //5,这个你自己用变量代替

这样数组就重载了。

你写这个可以去免费脚本区看看我哪个  鼠标同步操作的源码,也是多线程。
作者: 梧桐树下雨    时间: 2012-2-26 21:18
回复 8楼梧桐树下雨的帖子

弄好了  。。。  哎  加个休眠 就成功了  害得我试了半天 。。。
作者: 梧桐树下雨    时间: 2012-2-26 21:18
回复 7楼cylhb的帖子

弄好了  。。。  哎  加个休眠 就成功了  害得我试了半天 。。。
作者: 梧桐树下雨    时间: 2012-2-26 21:25
回复 9楼cylhb的帖子

谢谢  这个我还真不知道  我  设一个全局的句柄 之后把 数组句柄 挨个 给那个全局句柄赋值 。。。
作者: 超自然    时间: 2012-2-26 21:33
传进去的值做成数组,有多少线程就有多少成员,一个线程占用一个成员
听说将来版本可以线程传参.....
作者: stxuhong    时间: 2012-2-26 23:00
学习一下。。。
作者: jkjksxl    时间: 2012-2-28 00:07
:-D:-D:-D:-D




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