在我的表单控件中生成数字时钟

时间:2014-09-02 18:50:10

标签: vb.net clock

这是我的第一个问题,如果有任何错误,请原谅我。也是VB.net的新手。让我说到这一点。我希望显示一个数字时钟,每次显示秒数而不刷新页面。

我有一个名为Label1的标签,我需要在其中显示时间。我用循环尝试了它但只显示了一次。如何在表单加载时使其运行。

我对此代码的体验是:

For i As Integer = 0 To 60
    Label1.Text = Now.TimeOfDay.ToString
Next

但它只显示一次。我期待一些帮助,使其在表单加载时运行。提前谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用Timer control来实现此目的。该链接将指导您创建计时器事件。在这里,我建议一些动态创建计时器并通过AddHandler为其添加事件的方法。请考虑以下代码:

    Dim clockTimer As Timer = New Timer 'Creating dynamic timer
    clockTimer.Interval = 1000 'Assign timer interval as 1000ms=1second
    AddHandler clockTimer.Tick, AddressOf clockTick 'add event for the dynamically created controls
    clockTimer.Start()'start the timer
    ' Up to this comes in the form load section
    Public Sub clockTick()' Function which refered by the addhandler
        Label1.Text = Now.TimeOfDay.ToString ' show time in label and are refreshed in each tick(1sec)
    End Sub

更新:为什么您的代码无效:

  • 您正在使用For loop迭代代码60次,但它会在一秒钟内完成迭代,因此您无法看到更改。
  • 而是使用将在指定的时间间隔内自动执行的计时器