TC官方合作论坛

 找回密码
 立即注册
查看: 1154|回复: 6

[已解决] 继续线程关闭,整理代码,麻烦看下

[复制链接]
发表于 2014-10-17 23:15:55 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
  1. #include"g抓鬼任务.t"
  2. 空间 abc
  3.    变量 线程句柄,i
  4.    i=0
  5.     功能 热键0_热键()
  6.        //这里添加你要执行的代码
  7.          线程句柄=线程.开启("g抓鬼任务.执行抓鬼","")
  8.          返回 真
  9.     功能结束
  10.     功能 热键1_热键()
  11.        //这里添加你要执行的代码
  12.          标签.设置文本("标签12","关闭线程")
  13.          <font color="#ff0000"><b>线程.关闭(线程句柄)</b></font>  //只会执行到这里就不会往下走了。。。。。
  14.          辅助.等待(1000)
  15.          标签.设置文本("标签12","线程已经关闭")
  16.     功能结束
  17. 空间结束

  18. 空间 g抓鬼任务

  19.     功能 执行抓鬼()
  20.      *抓鬼代码*

  21.        下面是一个判断
  22.       如果(i>=5)
  23.         //移动到第一个窗口
  24.           标签.设置文本("标签12","循环结束任务完成")
  25.           辅助.等待(1000)
  26.           dm.MoveTo(104,42)
  27.           辅助.等待(500)
  28.           dm.LeftClick()
  29.           辅助.等待(500)
  30.           标签.设置文本("标签12","马上关闭线程")//111111
  31.           辅助.等待(500)
  32.           abc.热键1_热键()
  33.           辅助.等待(500)
  34.           abc.热键0_热键()
  35.       否则
  36.           i=i+1
  37.       如果结束
  38.    
  39.     功能结束
  40. 空间结束
复制代码

代码走到热键1的 线程.关闭(线程句柄)这里就不会走了,请大大看下是什么原因,求指导
回复

使用道具 举报

发表于 2014-10-19 23:18:51 | 显示全部楼层
你就是把自身把自身线程停止了."abc.热键1_热键()"这个代码会把自身跳到"功能 热键1_热键()"这个里面,然后结束自身.所以你后面的操作进行不了.如果简单改的话可以这样改:把"热键0"一开始加一个2秒延迟.然后最后面改成:先用"线程.开启"来开启热键0,再开启热键1,这样的话,到最后时它会开启一个线程来预备重新开启自己.然后会迅速关闭自身.这时候等待2秒之后.之前用"线程.开启"预备开启的线程会重新再开启一遍线程.即达到从新启动线程的目的.不过这样有个问题.就是在2秒内预备开启线程的时候,是无法暂停整个线程的.只能等到线程将要重新预备开启自身这个线程前结束这个这个线程,才会让他无法重启.所以会出现暂停失灵的情况.这个说的有点绕.我给你改过的..测试没问题:
  1. 空间 tc论坛测试用
  2. 变量 线程句柄

  3. 功能 热键0_热键()
  4.     //这里添加你要执行的代码
  5.     辅助.等待(2000)
  6.     线程句柄=线程.开启("g抓鬼任务.执行抓鬼","")
  7.     标签.设置文本("标签0","线程开启中")
  8. 功能结束

  9. 功能 热键1_热键()
  10.     //这里添加你要执行的代码
  11.     标签.设置文本("标签0","正在关闭线程中...")
  12.     辅助.等待(500)
  13.     线程.关闭(线程句柄)   
  14.     标签.设置文本("标签0","线程已经关闭")
  15. 功能结束

  16. 空间结束

  17. 空间 g抓鬼任务
  18. dm=com("dm.dmsoft")
  19. i=5
  20. 功能 执行抓鬼()
  21.     //下面是一个判断
  22.     如果(i>=5)
  23.         //移动到第一个窗口
  24.         标签.设置文本("标签0","线程重启运行中..")
  25.         辅助.等待(1000)
  26.         dm.MoveTo(104,42)
  27.         辅助.等待(500)
  28.         dm.LeftClick()
  29.         辅助.等待(500)
  30.         线程.开启("tc论坛测试用.热键0_热键","")
  31.         tc论坛测试用.热键1_热键()
  32.     否则
  33.         i=i+1
  34.     如果结束
  35. 功能结束

  36. 空间结束
复制代码

回复 支持 反对

使用道具 举报

发表于 2014-10-17 23:51:22 | 显示全部楼层
用线程开调用热键
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-10-17 23:52:48 | 显示全部楼层
能麻烦您说详细点么?是用线程开调用热键0还是热键1?
回复 支持 反对

使用道具 举报

发表于 2014-10-18 00:32:45 | 显示全部楼层
dayangyunet 发表于 2014-10-17 23:52
能麻烦您说详细点么?是用线程开调用热键0还是热键1?

你都把自身停止了,怎么可能还会继续下去
回复 支持 反对

使用道具 举报

发表于 2014-10-18 09:17:59 | 显示全部楼层
3231111111111
回复 支持 反对

使用道具 举报

发表于 2014-10-18 13:42:40 | 显示全部楼层
不要管4楼的 他没看你代码

你在停止哪里加个消息框看看会不会往下面执行
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-9-28 12:45 , Processed in 0.050875 second(s), 24 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表