我正在尝试创建一个从指定时间开始倒计时的计时器。
用户输入时间并单击按钮。
单击按钮会打开第二个表单,其中包含一个计时器。
每次计时器计时,时间都会减少,剩余时间会显示在form2 ( ) 上的文本框中。textbox.text = timeLeft
但是,文本框永远不会真正更新。它保持空白,并且为属性分配新值真正起作用的唯一时间.text
是如果我引发事件(例如单击将更改文本框.text
属性的按钮)
*这是定时器类的代码
Public Class CountdownTimer
Private timeAtStart As Integer
Private timeLeft As Integer
Public Sub StartTimer(ByVal time As Integer)
timeAtStart = time
timeLeft = timeAtStart
Timer1.Enabled = True
End Sub
Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If timeLeft > 0 Then
timeLeft = timeLeft - 1
txtTimeLeft.Text = timeLeft.ToString
Else
Timer1.Stop()
txtTimeRemaining.Text = "Time!"
txtTimeRemaining.ForeColor = Color.Red
End If
End Sub
End Class
这就是我所说的:
Dim timer As New CountdownTimer timer.Show() CountdownTimer.StartTimer(CInt(txtSetTime.Text))