TC官方合作论坛

标题: TC2.0常用功能解惑贴--实时更新1006(使用TC2.0必看)[1.005-2.006版本] [打印本页]

作者: 小王    时间: 2011-9-21 17:47
标题: TC2.0常用功能解惑贴--实时更新1006(使用TC2.0必看)[1.005-2.006版本]
此贴为TC2.0新增的一些功能及原来功能改进的使用方法说明,根据大家需要实时更新,大家如果有什么不懂的可以在群里或论坛提问。


插件接口:每个发布的插件至少有一个接口,这个接口都有个对应的接口ID名,例如大漠的接口ID dm.dmsoft(我们可以在大漠的帮助文档中找到),有了这个接口我们才可以调用他的方法(函数)

TC2事件:事件也可以叫函数或方法(TC2中很多控件都像TC1中的按钮控件一样支持事件了)。

TC2事件响应:TC2中有多种事件响应的方式,如1、点击响应(如按键控件,按一下按钮执行一个函数)2、定时响应(如时钟控件,根据事件变化来执行函数)3、热键响应(通过自己设置的热键来响应函数,有点类似点击响应,都试按一下响应一次)4、内容改变(如编辑框内容改变了触发一次事件)5、焦点改变(如编辑框焦点改
变了触发一次事件)等等,触发事件的方式多种多样,我们可以根据个人的喜好来设置。

资源打包:TC2中所有的资源文件会打包到生成的.exe文件中

资源释放:每次执行我们生成的.exe文件程序会在系统临时文件夹把exe里面包含的所有资源生成一个临时文件,让我们来调用(大多数程序都是这种模式)

资源删除:当我们退出这个.exe时,之前使用时生成的临时文件夹会自动删除(目前仅支持正常退出的情况,如果是非法退出的该临时文件不会删除。 ps:大多数软件都会再系统临时文件产生大量文件,当没有正常退出时会残留,这也是我们俗称的系统垃圾了,我们只需定期清理系统垃圾即可)

一、初始化及销毁事件的使用
首先选中设计面板中的主面板(查看属性窗口),设置初始化事件或销毁事件,之后在初始化或销毁函数中添加自己想要执行的代码,跟普通的函数调用一样,只是这里TC帮你定义了他的触发方式(通过程序开始或结束时分别调用初始化或销毁函数)
[attach]746[/attach]

二、热键的使用
首先在面板上拖放一个热键控件--选中这个控件--属性--在热键事件中选择一下--会自动创建一个热键响应函数--之后在函数里面写入我们要执行的代码即可--接下来同样是属性框里--在热键键值中输入我们想要的热键(即我们平常说的快捷键,这里也可以用热键控件的方法来设置,详情见帮助文档),运行程序---按我们刚才设置的热键就会执行我们在热键响应函数里写的代码了。

举例1(普通热键使用方法):
功能 逻辑型 热键0_热键()
//这里面添加你要执行的代码,通过热键触发,热键设置在热键属性里的热键键值中设置
空间名.开始_点击()
//空间名就是你当前项目的空间名,这样就实现了用热键调用默认开始按钮的效果
返回 真
功能结束

举例2(下面是动态设置热键的方法):
功能 逻辑型 热键0_热键()
辅助.消息框("hello world")
返回 真
功能结束

功能 逻辑型 热键0_失去焦点()
//在热键框设置热键后焦点从上面失去触发该事件(就是鼠标点一下旁边,随便哪里,只要把那个焦点移开就行)
热键.销毁("热键0") //这里是是卸载上次设置的热键,释放系统资源
热键.注册("热键0") //注册热键框里你设置的热键
返回 真
功能结束

[attach]747[/attach][attach]748[/attach]

三、资源文件的访问
TC2新增资源文件的访问(访问方法在路径前面加“rc:”,资源文件访问可以支持图片,文件,文件夹等,资源文件访问的是程序执行时创建的临时文件,程序退出后会自动删除临时文件,所以不会保存,请根据需求使用)
举例:
图片框.设置图片("图片框0","rc:test.bmp")

四、插件调用
TC2.0新增插件导入模式,在文件最开头导入插件,可导入多个插件,用import+插件接口(接口需要插件作者提供,可以查找插件帮助文档看看作者放出插件接口没有,如果没有接口将无法使用此方法调用插件)+对象名(自定义类似命名空间,这里随便写什么,但是要符合TC命名规则)之后调用函数的时候用,AAA.函数名,注意这个AAA是我们自己定义的,调用的函数名请查看接口原始帮助文档中的函数名。
注意:使用以上方法调用插件时,必须先注册该插件,查到该插件的接口。
注意: 目前插件调用暂时不支持参数为数组的函数(不管是一维数组,还是多维数组),返回类型只支持一维数组(以字符型返回,用竖线“|”隔开,如 “35,36|70,80|90,94”)
注册插件举例:
方法1大漠插件注册:辅助.注册插件("C:\\dm.dll",真)
//首先把dm.dll(这个是大漠插件的dll文件,别的插件也有自己对应的dll文件或ocx文件)然后把它放在C盘
//根目录下,之后执行上面的代码进行插件注册

方法2工具注册,使用TC小工具中发布的“com接口查看器”进行注册,使用方法非常简单,选择插件路径(注意路径中不能有空格),点击注册插件,注册成功和失败会有相应提示。
[attach]784[/attach]

插件注册成功后我们就可以开始用调用插件了。
大漠插件调用举例:
#import "dm.dmsoft" AAA
//这里的dm.dmsoft就是我们在大漠插件帮助文档中查到的接口,注意#import语句必须定义在空间名之前
整型 窗口句柄,是否成功     
窗口句柄=AAA.FindWindow("","1.txt - 记事本")      
是否成功=AAA.BindWindow(窗口句柄,"normal","normal","normal",0)

如果(是否成功==1)
辅助.消息框("窗口绑定成功!")
如果结束

如果(窗口句柄==0)
辅助.消息框("找不到窗口,窗口名称有误!")
如果结束

窗口.置顶(窗口句柄)
AAA.KeyDown(65)
辅助.等待(1000)
AAA.KeyUp(65)
AAA.UnBindWindow()



作者: TC管理员    时间: 2011-9-21 17:52
:D. 此贴必火。 本贴,只针对版本2的问题,水贴一律删除。
作者: TC    时间: 2011-9-21 18:13
是不是回复才可见
作者: 小风子    时间: 2011-9-21 18:53
三楼!嘿嘿!
作者: laozuma10    时间: 2011-9-21 18:53
顶顶,就是选项卡不会用还是没晓光
作者: 章昊    时间: 2011-9-21 19:21
:*王大哥确实给力,以后就不用那么怕别人启动脚本使用快捷方式了。
作者: ↘夢想飛舞√    时间: 2011-9-21 20:05
:strong:
作者: 12点10分    时间: 2011-9-21 20:43
我问的问题~~~为啥没有沙发
作者: 12点10分    时间: 2011-9-21 20:48
发现热键还有初始化的代码都排列在主程序退出后面,这样是正常的不?
作者: 小丶笨笨    时间: 2011-9-21 21:52
下拉框 选项后  想关闭不让下拉框再有值数 怎么做  也就是下拉框选择后 怎么做能让下拉框的值变成-1
作者: 小王    时间: 2011-9-22 10:25
回复 9楼12点10分的帖子

TC2支持函数上下调用,所以位置在那里都没有关系!
作者: 小王    时间: 2011-9-22 10:28
回复 10楼凉凉☆笨笨的帖子

看看下拉框的方法,有个清空,可以把所有内容清除!
作者: lt729541702    时间: 2011-9-22 22:27
大哥,你这个字体看起来太那个啥了
作者: tangryo    时间: 2011-9-24 10:29
很不错· 今天 才 来看看··
作者: 小丶笨笨    时间: 2011-9-24 10:32
不错不错
作者: 89042078    时间: 2011-9-24 12:37
学习学习:D
作者: zxyc2000    时间: 2011-9-27 10:21
顶!要学的东西好多了
作者: 苏门答腊的爱    时间: 2011-9-30 14:37
:-| kan bu dong!
作者: 小王    时间: 2011-10-6 15:20
那里看不懂提出来哦!
作者: yysaplie    时间: 2011-10-9 14:19
果然看到2.0了
作者: 1066808696    时间: 2011-10-12 14:28
看的不是很懂  只知道正常退出的时候生成的资源文件会被删除   2.0什么时候发布
作者: 961560902    时间: 2011-10-21 12:26
哇,字怎么这样的啊,看的眼睛花
作者: w3325182    时间: 2011-10-24 14:09
谢谢分享,只是以后能不能全用中文啊
作者: 961560902    时间: 2011-10-27 01:04
看看
作者: 全世界失眠    时间: 2011-10-27 10:02
此贴必火。
作者: jiajiacool    时间: 2011-11-23 08:38
dingding
作者: m13754891441    时间: 2011-12-8 17:08
不看此贴不知道什么是新版本,太强悍了
作者: larry511    时间: 2011-12-20 15:35
有没有,完整的学习TC软件教程?急!!
作者: xuhekkll    时间: 2012-1-15 10:12
i i不错
作者: 陌上青衣。    时间: 2012-1-31 22:45
我发现使用找到窗口这个功能的时候,窗口名没填完。就会显示窗口句柄不能为空
作者: lijunaz1314    时间: 2012-2-7 15:42
学习中
作者: fang2229217    时间: 2012-2-7 20:44
如何学啊 看着都晕:Q
作者: 刘小念爱我    时间: 2012-2-28 06:32
看不太明白啊啊啊啊啊
作者: 313442275    时间: 2012-3-12 01:41
沙发有什么好处啊 给的金币多????
作者: hgaruda    时间: 2012-3-14 09:46
火爆。。给力啊。。正好需要
作者: eggwyw    时间: 2012-3-19 16:57
终于开放注册了 来学习哈
作者: xiaoer0323    时间: 2012-3-22 07:19
很好,很强大
作者: q13849921461    时间: 2012-3-26 22:41
回复 1楼小王的帖子


空间 我的程序
整型 线程句柄
//定义一个全局变量用于获取线程句柄或关闭线程
功能 逻辑型 循环开始()
循环(真)
//这是循环的条件,当循环条件满足时,执行下面语句,若不满足直接跳转到循环结束后面的语句执行
辅助.消息框("这是循环的动作!")
//这是循环体内的内容,执行一个弹出消息的对话框
循环结束
返回 真
功能结束
功能 逻辑型 开始_点击()
//这里添加你要执行的代码,这里是你点击开始按钮执行的代码

线程句柄=线程.开启("我的程序.循环开始")
返回 真
//函数返回语句
功能结束
功能 逻辑型 退出_点击()
//这里是你退出的时候要执行的代码,这类是你点击退出按钮执行的代码
线程.关闭(线程句柄)
辅助.等待(50)
辅助.退出()
返回 真
//函数返回语句
功能结束

空间结束
//命名空间结束语句
作者: xunyao966    时间: 2012-5-30 08:48
我终于对插件了解了一点,谢楼主
作者: 滕狼    时间: 2012-7-24 00:49
不懂




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