文本框中的vBasic时间减少

时间:2014-05-29 13:15:40

标签: timer controls

在visual studio 2012工作。

我已经以时间格式ex(00:15:10)从mysql数据库中将值重命名为textbox。

我在我的表单上设置了计时器,当计时器打勾我要将时间减少到00:15:09 下一个计时器打勾00:15:08 下一个计时器滴答00:15:07 .....

直到时间到0.然后它将弹出msgbox以显示"时间用尽"

我使用了这段代码,但说实话,我并不认为它会起作用。

   Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
    TextBox1.Text = Val(TextBox1.Text) - 1
    If Val(TextBox1.Text) <= 0 Then
        MsgBox(" Time run out ")
    End If
End Sub

我很抱歉,但我的英语很糟糕。祝你有愉快的一天

1 个答案:

答案 0 :(得分:0)

此代码非常接近解决方案

Public Class frmSinglePlayer

Private TargetDT As DateTime
Private CountDownFrom As TimeSpan = TimeSpan.FromMinutes(3)

Private Sub frmSinglePlayer_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    tmrCountdown.Interval = 500
    TargetDT = DateTime.Now.Add(CountDownFrom)
    tmrCountdown.Start()
End Sub

Private Sub tmrCountdown_Tick(sender As Object, e As System.EventArgs) Handles tmrCountdown.Tick
    Dim ts As TimeSpan = TargetDT.Subtract(DateTime.Now)
    If ts.TotalMilliseconds > 0 Then
        lblTime.Text = ts.ToString("mm\:ss")
    Else
        lblTime.Text = "00:00"
        tmrCountdown.Stop()
        MessageBox.Show("Done")
    End If
End Sub

结束班