vb用timer倒计时到0程序停止

就是用timer倒计时十秒,到0的时候就停在0不动了,然后command不能点,应该怎么编写阿?

在 VB 中使用 Timer 控件来实现倒计时功能很简单,你可以按照以下步骤进行编写:

    添加 Timer 控件到窗体中,设置它的 Interval 属性为 1000(表示以毫秒为单位的计时器间隔)。

    在窗体的 Load 事件中初始化倒计时的初始值:

Private Sub Form_Load()
Label1.Caption = "10"
End Sub

这里将倒计时的初始值设置为 10 秒。

    在 Timer 控件的 Tick 事件中处理倒计时逻辑:

Private Sub Timer1_Timer()
Dim count As Integer
count = CInt(Label1.Caption) - 1 ' 计时器减一
If count >= 0 Then
Label1.Caption = CStr(count) ' 更新标签的显示文本
Else
Timer1.Enabled = False ' 停止计时器
Command1.Enabled = False ' 禁用按钮
MsgBox "时间到了!", vbInformation ' 弹出消息框提示
End If
End Sub

在 Tick 事件中,我们首先将标签的显示文本减一,然后判断计时器是否已经减到了 0。如果还没到 0,就更新标签的显示文本,继续等待下一次 Tick 事件;如果已经到了 0,就停止计时器、禁用按钮,并弹出一个消息框提示计时结束。

    在按钮的 Click 事件中启动计时器:

Private Sub Command1_Click()
Timer1.Enabled = True
Command1.Enabled = False

End Sub

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-25
Private Sub Command1_Click()
Command1.Caption = 10
Timer1.Enabled = True
End Sub

Private Sub Form_Load()
Timer1.Interval = 1000
Timer1.Enabled = False
End Sub

Private Sub Timer1_Timer()
If Command1.Caption > 0 Then
Command1.Caption = Val(Command1.Caption) - 1
Else
Timer1.Enabled = False
Command1.Enabled = False
End If
End Sub
第2个回答  2012-12-25
在timer属性中找到interval,在后面输入10000,在timer中输入代码:
command1.enabled=false本回答被提问者采纳