如何用VB程序做计时器?

如题所述

3个标签,2个按钮,1个计时器控件
Private Sub Command1_Click() '开始/暂停
If Timer1.Enabled = True Then
Timer1.Enabled = False
Else
Timer1.Enabled = True
End If
End Sub

Private Sub Command2_Click() '停止清0
Label1 = "0"
Label2 = "0"
Label3 = "0"
Timer1.Enabled = False
End Sub

Private Sub Form_Load() '初始设置
Label3 = "0"
Label2 = "0"
Label1 = "0"
Timer1.Interval = 1000
Timer1.Enabled = False
End Sub

Private Sub Timer1_Timer()
Label3 = Label3 + 1
If Label3 = 60 Then
Label3 = "0"
Label2 = Label2 + 1
If Label2 = 60 Then
Label2 = "0"
Label1 = Label1 + 1
End If
End If
End Sub
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-09
计时器是在每一定时间间隔就触发一次事件,这个时间可在计时器的interval属性中设定,默认值为0,表示计时器不工作。
如果触发事件后不关闭计时器(设置enabled属性为false,功能与interval=0时一样),它就每隔一定时间不断触发事件,直到程序结束或 interval属性值设为0 或 enabled属性设为0

倒计时5秒结束后自动关闭form2:
**Timer是不准确,但精度要求不高时还是可以的。
1.新建标准EXE工程,在Form1添加一计时器Timer1,一文本框Text1,再加一窗体:form2
2.写入下面代码(有两方案),但以下还是保留
[方案一:最简单的,看不到倒数过程]
private sub Form_load()
form2.show '运行窗体2
timer1.interval=5*1000 '5000毫秒,即5秒
end sub
Private Sub Timer1_Timer()
timer1.enabled=false '关闭计时器
unload form2 '关闭form2
End Sub
[方案二:看到倒数过程]
private sub Form_load()
form2.show '运行窗体2
text1.text="5"
timer1.interval=1*1000 '1000毫秒,即1秒
end sub
Private Sub Timer1_Timer()
Rem text1的值减1
'{
Dim a as integer
a=val(text1.text) 'text1.text字串转整数
a=a-1
text1.text=str(a) '整数转字串放回text1.text
'}
Rem 检查text1的值
'/*
if a<=0 then
unload form2 '关闭form2
timer1.enabled=false '关闭计时器
'*/
End Sub
相似回答