如何动态调用Timer控件?????
现在碰到这么一个问题,就是我需要建立多个动态Timer控件每个Timer触发时间间隔都不同,且每个Timer中执行的代码也是不同的
如何动态添加和删除这些Timer控件?如何使这些Timer和代码之间建立起关联,让我可以知道这个Timer是运行这段代码,另一个代码运行另一段代码?删除的时候也可以对应删除
有经验的给点思路啊?
我看到网络上有一个代码是用SetTimer API来创建的,但函数采用回调,如何往回调函数中传递参数呢?
--------------------编程问答-------------------- --------------------编程问答-------------------- 输入传人的参数可以使用模块变量直接使用 --------------------编程问答-------------------- 我还是不太清楚调用的方法,比如:
Load Timer1(3)
Timer1(0).Tag = "0"
Timer1(0).Interval = 5000
Timer1(0).Enable = True
Timer1(1).Tag = "1"
Timer1(1).Interval = 8000
Timer1(1).Enable = True
Timer1(2).Tag = "2"
Timer1(2).Interval = 20000
Timer1(2).Enable = True
我在程序中动态载入3个Timer控件 ,并且都启用这3个时钟
那么每个时钟的执行代码我该写在哪里?才能使系统能自动触发时钟,并运行里面的代码?
默认时钟的函数是
Private Sub Timer1_Timer()
end Sub
这里是无法传递参数的,这个函数里无法知道应该调用哪个Timer,楼上的,能更详细点教我吗?谢了 --------------------编程问答-------------------- Private Sub Timer1_Timer(Index As Integer)
end Sub
这个函数我试过,报:过程声明与同名事件或过程的描述不匹配 --------------------编程问答-------------------- --------------------编程问答-------------------- 实际上,你未必需要那么多 Timer。
例如,你可以使用一个 Timer 来完成多项定时任务:
1 将 Timer 的时间间隔设置为多个时长需求的最大公约数。
2 为每一个任务声明并实例化一个全局的计数器变量,和一个计数上限常数(时长需求与 Timer 间隔的商)。
3 在 Timer 事件中,为每一个任务写一段服务代码:
* 所有的计数器变量加 1;
* 如果到达某一任务计数上限,执行该任务服务,完成后计数器清零。
* 任务代码的顺序,就是任务的优先级。
--------------------编程问答-------------------- --------------------编程问答--------------------
你timer1的index要设置0,
当然测试过,况且,既然人家给你提供了代码,无论是否有测试,你自己试一下,不就知道了 --------------------编程问答-------------------- OK,我刚才测试了,好像是可行的
主要是我开始没有设置Index为0
谢谢楼上的了
补充:VB , API