C# 在VB中使用类似于更新函数的计时器

C# 在VB中使用类似于更新函数的计时器,c#,vb.net,timer,visual-studio-2015,C#,Vb.net,Timer,Visual Studio 2015,我知道VB中没有更新函数,但我想知道是否有一段特定的代码可以在其中每帧/滴答地运行代码。就像计时器一样,但我不知道如何使用计时器 下面是一些我想每秒检查的示例代码 if aBoolean then textBox1.Text = "Aboolean is true" else textBox1.Text = "Aboolean is false" end if 例如,一个按钮会使一个参数变为真。我知道这可以通过按下按钮来实现,但这只是一个例子。 如果没有什么可以做的,那么我只需

我知道VB中没有更新函数,但我想知道是否有一段特定的代码可以在其中每帧/滴答地运行代码。就像计时器一样,但我不知道如何使用计时器

下面是一些我想每秒检查的示例代码

if aBoolean then
    textBox1.Text = "Aboolean is true"
else
    textBox1.Text = "Aboolean is false"
end if
例如,一个按钮会使一个参数变为真。我知道这可以通过按下按钮来实现,但这只是一个例子。 如果没有什么可以做的,那么我只需用C重新编写代码,并使用
void update()
。 谢谢。

C#代码

示例来源:

在Winforms中,您拥有

Control.OnPaint
UIElement.OnRender
,这主要类似于更新调用。这是独立于语言的(C#,VB,C++)

在WPF中,您拥有

Control.OnPaint
UIElement.OnRender
,这也很像一个更新调用。
根据您的窗口框架,您可以使用其中一个作为更新交换。

从外观上看,您是在用VB编写代码,因此我将在这里这样做。此外,我并不想居高临下,我只想写下答案,让其他人看了这个可以使用它,并了解一些有关计时器

首先,在工具箱中,您需要双击计时器控件。这将在设计窗口中的窗体下方添加计时器。计时器不会出现在窗体上,因为它没有任何图形界面

在窗口下面应该有一个名为Timer1的计时器控件。双击这个,你的代码窗口将打开,你会发现一个新的子,看起来像这样-

Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick

End Sub
在子组件中添加您希望每秒发生的代码。所以现在你应该有这个-

Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
    if aBoolean then
        textBox1.Text = "Aboolean is true"
    else
        textBox1.Text = "Aboolean is false"
    end if
End Sub
好吗?到现在为止,一直都还不错。这段代码还不能做任何事情。启用计时器1时,每次计时器滴答声时,都会引发一个名为Timer1.Tick的事件。上述代码在发生此勾号事件时运行

下一位取决于您希望计时器何时开始滴答作响,以及您希望滴答之间的间隔多长时间。间隔存储为毫秒,因此要将Timer1的间隔设置为1秒,只需执行以下操作

Timer1.Interval=1000
这需要在你的代码中的某个地方,在你想要计时器开始计时之前,你知道它会运行。我有时会把它放在表单的加载事件中,但它不一定要在那里

在您的程序中,当您希望计时器开始计时时,只需将其添加到代码中的子项即可

Timer1.Start
不可避免地会有一个点,你希望计时器停止发射这些滴答声,所以在这一点上,只需添加

Timer1.Stop
这几乎涵盖了计时器的基本知识


希望对您有所帮助

您的意思是在计时器上。勾选()?void timer_Tick(objectsender,EventArgs e){//code here}可以工作。您是否可以正常地对其进行编码?您可以在此处查看此方法。当布尔变量
aBoolean
更改时,此方法不会更新UI。当
textBox1.Text
更改时,UI将调用
OnPaint
/
OnRender
,因此OP需要知道如何使用计时器进行更新。这并没有回答OP的要求。这正是我所要找的!非常感谢!没问题。很乐意帮忙。当然,如果人们正确地广播问题,这会有所帮助;)