以 1 秒的间隔刷新文本框中的文本



>我正在尝试在文本框中显示本地时间,但要刷新它... 我使用计时器希望刷新时间,但它似乎没有重新打印我的文本。如果你能花时间帮助我,那就太好了!

编辑*** 所以我尝试使用 TextBox.AppendText(( 看看如果它不断重印会发生什么,我注意到日期和时间根本没有更新。我需要刷新表单吗???

Public Class Form1
    Dim t As String = My.Computer.Clock.LocalTime
    Dim m As String = t & vbCrLf & " - Time Left - "
    Private Timer As System.Windows.Forms.Timer
    Private TimerCounter As Integer = 0
    Dim TempText As String = m
    Protected Sub TimerTick(ByVal sender As Object, ByVal e As EventArgs)
        TextBox.TextAlign = HorizontalAlignment.Center
        TimerCounter += 1
        TextBox.Text = t
    End Sub
    Private Sub Form1_Shown(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Shown 'this goes with the line just above
        Timer = New Windows.Forms.Timer With {.Interval = 1000}
        AddHandler Timer.Tick, AddressOf TimerTick
        Timer.Start()
    End Sub
End Class

如果每次计时器滴答作响时,我的预期结果都会在textbox1中更新。

你在声明变量 t 时设置了它,但随后你永远不会更新它。因此,它始终包含相同的值。
实际上,您甚至不需要该变量。您可以简单地将 TextBox.Text 设置为 My.Computer.Clock.LocalTime

Protected Sub TimerTick(ByVal sender As Object, ByVal e As EventArgs)
    ' You can set this property just one time when you define your TextBox
    ' TextBox.TextAlign = HorizontalAlignment.Center
    TimerCounter += 1
    TextBox.Text = My.Computer.Clock.LocalTime
End Sub

最新更新