TC官方合作论坛

 找回密码
 立即注册
查看: 571|回复: 7
打印 上一主题 下一主题

[问题] 关于句柄值不能为空的问题,求助

[复制链接]
跳转到指定楼层
楼主
发表于 2012-11-22 20:55:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上加入TC

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

x
我是根据官方视频 按步骤写的 然后自己修改用途  源码如下:
空间 泡泡自动卖店
//定义默认空间
整型 对象句柄  //这个是临界区的对象
整型 线程句柄  //开启关闭线程的句柄

功能 整型 线程方法() //这里接收线程开启时传入的参数   
整型 句柄=线程.获得当前句柄()   
字符型 返回值=系统.枚举("SWT_Window0",1)//类名枚举
字符型[] 字符句柄集=字符型[1] //需要先初始化一次
逻辑型 是否成功=字符串.分割(返回值,"|",字符句柄集)
整型 c1,i=0
数组.大小(字符句柄集,c1)
循环(i<c1)
    泡泡自动卖店.向窗口发送内容(字符句柄集)
    线程.开启("泡泡自动卖店.向窗口发送内容",字符句柄集)//开启线程
   i=i+1
循环结束

返回 0
功能结束

功能 整型 向窗口发送内容(字符型 字符型句柄)
   
    字符型 返回值=系统.枚举(字符型句柄,3)//副窗口枚举子窗口
    字符型[] 字符句柄集=字符型[1] //需要先初始化一次
    逻辑型 是否成功=字符串.分割(返回值,"|",字符句柄集)
    整型 c1,i=0,句柄
    数组.大小(字符句柄集,c1)
    循环(i<c1)
        如果(窗口.类名(转换.字符型转整型(字符句柄集,0))=="SWT_Window0")
            句柄=转换.字符型转整型(字符句柄集)
            跳出
        如果结束
        i=i+1
    循环结束
     
线程.进入临界区(对象句柄)
//循环(真)
辅助.消息框("自动卖店脚本开始执行")
窗口.提交按键(句柄,112)
辅助.等待(1000)
窗口.提交按键(句柄,100)
辅助.等待(1000)
窗口.提交按键(句柄,13)//回车按键
辅助.等待(1000)
窗口.提交按键(句柄,38)
辅助.等待(1000)
窗口.提交按键(句柄,38)
辅助.等待(1000)
窗口.提交按键(句柄,39)
辅助.等待(1000)
窗口.提交按键(句柄,13)//回车按键
辅助.等待(3000)
键盘.按下(40)
辅助.等待(3000)
键盘.弹起(40)
辅助.等待(3000)
辅助.消息框("自动卖店脚本执行完毕")
//循环结束   
线程.离开临界区(对象句柄)
   
返回 0
   
   
功能结束





     
功能 逻辑型 开始_点击()
//这里添加你要执行的代码
线程句柄=线程.开启("泡泡自动卖店.线程方法","")//开启线程
泡泡自动卖店.线程方法()
返回 真
//函数返回语句
功能结束

功能 逻辑型 退出_点击()
//这里添加你要执行的代码
辅助.退出()
线程.关闭(线程句柄)

返回 真
//函数返回语句
功能结束

功能 逻辑型 初始化()
//这里添加你要执行的代码
对象句柄=线程.创建临界区()

返回 真
功能结束


功能 逻辑型 销毁()
//这里添加你要执行的代码
线程.删除临界区(对象句柄)

返回 真
功能结束


空间结束
//空间结束语句                                                         然后怎么修改成多线程?多窗口同步运行呢?
回复

使用道具 举报

沙发
 楼主| 发表于 2012-11-22 20:59:33 | 只看该作者
线程.开启("泡泡自动卖店.向窗口发送内容",字符句柄集)//开启线程    这里是不是多线程开启的方法?  多复制几个? 我记得视频是这样说的
回复 支持 反对

使用道具 举报

板凳
发表于 2012-11-22 21:02:15 | 只看该作者
没有容错,所以会出句柄为0
试问假如你给的父句柄有误,导致没有找到所谓的子窗口,当i=C1之后,还是会走下面的代码.这只是个典型,你里面两次关于句柄的操作都缺容错处理
第二,总是开个线程,然后再调用一次,是在干啥呢??
回复 支持 反对

使用道具 举报

地板
 楼主| 发表于 2012-11-22 21:08:39 | 只看该作者
回复 3楼超自然的帖子

我想前台  多线程 多窗口同步处理~~~~
回复 支持 反对

使用道具 举报

5#
 楼主| 发表于 2012-11-22 21:13:51 | 只看该作者
回复 0楼a425673288的帖子

我用抓抓  都是子窗口 跟窗口的  都是 SWT_Window0
回复 支持 反对

使用道具 举报

6#
发表于 2012-11-22 22:53:06 | 只看该作者
前台  多线程 在我的理解中,前台不可能多线程,因为你要操作窗口就得激活窗口,一旦激活了这个窗口,相应的另一个就后台了,如果想多窗口前台操作,我认为该用ctrl+alt实现。  前台鼠标,键盘都工作在激活窗口内的。
回复 支持 反对

使用道具 举报

7#
 楼主| 发表于 2012-11-23 01:02:56 | 只看该作者
回复 6楼pixiangyun的帖子

绑定前台窗口 行不? 会不会很麻烦?  而且我不会大漠
回复 支持 反对

使用道具 举报

8#
发表于 2012-11-23 08:13:13 | 只看该作者
只能激活一个窗口,前台就用不了多线程
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

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

GMT+8, 2025-10-9 04:51 , Processed in 0.115727 second(s), 24 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

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