我想在一段时间内设置变量的值。即myVar = 1,持续20毫秒,然后回到0.我使用定时器实现了这一点,但我能做的唯一方法是为每个变量设置一个单独的定时器。
我想有一个单一的计时器,我可以通过引用或类似的方式传递持续时间和变量。
我可以将变量ByRef传递给vb.net中的计时器事件吗?或者具有类似功能的东西?
答案 0 :(得分:0)
这似乎有效。但是我需要添加一个免责声明,我只是以非常简单的方式测试它并且没有检查内存泄漏等
将此子句添加到您的代码中..
Public Sub SetVar(ByRef variable As Integer, value As Integer, msDuration As Integer)
variable = value
Thread.Sleep(msDuration)
variable = 0
End Sub
每次要将变量设置为某个时间段的值时,请将其插入要更改值的位置。
Dim t As New Task(Sub()
SetVar(a, 100, 2000)
End Sub)
t.Start()