vb 循环内TIMER

来源:百度知道 编辑:UC知道 时间:2024/09/20 12:05:55
我把timer1写在一个WHILE循环里面,在select判断中调用,代码大致结构如下(省略不重要部分):
构建一个TIMER控件,设置interval=100,里面的代码形如是
label1(i)=val(ss)+val(mm)
mm=mm+1
ss=ss+1
在command1_click事件里写了形如下面的代码
onRceive=true
while(onreceive=true)
select case X(0)
case 1
timer1.enable=true
case 2
timer1.enable=true
end select
loop
请问为何label1的显示频率根本达不到100毫秒,很慢,我设置了断点按F8键一步步执行,发现TIMER1控件根本不是独立定时触发,先要进行几个while循环的执行才进入timer控件执行一下,导致了定时不准,请问我该如何写才能让timer控件保持独立的线程自动按照预定间隔触发

timer本身你就可以认为他是一个独立的线程啊,你的程序不需要这么写的,只需要把判断的语句放到timer中去,而不是放在循环中去

如果你要准确定时,用timer函数而不是timer控件

Private Declare Function GetTickCount Lib "kernel32" () As Long
试试看这个api,很准