vb.net 中多个timer分别用数组控制
时间: 2023-12-10 21:37:17 浏览: 166
可以使用一个 Timer 数组来控制多个 Timer。以下是一个示例代码:
```vb.net
Public Class Form1
Private WithEvents Timers() As Timer
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
' 初始化 Timer 数组
Dim count As Integer = 3
ReDim Timers(count - 1)
For i As Integer = 0 To count - 1
Timers(i) = New Timer()
Timers(i).Interval = 1000 * (i + 1)
Next
End Sub
Private Sub Timer_Tick(sender As Object, e As EventArgs) Handles Timers(0).Tick, Timers(1).Tick, Timers(2).Tick
' 根据不同的 Timer 处理事件
Dim timerIndex As Integer = Array.IndexOf(Timers, sender)
Select Case timerIndex
Case 0
' 处理 Timer 1 事件
Debug.WriteLine("Timer 1")
Case 1
' 处理 Timer 2 事件
Debug.WriteLine("Timer 2")
Case 2
' 处理 Timer 3 事件
Debug.WriteLine("Timer 3")
End Select
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
' 启动所有 Timer
For Each timer In Timers
timer.Start()
Next
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
' 停止所有 Timer
For Each timer In Timers
timer.Stop()
Next
End Sub
End Class
```
在上面的代码中,我们使用一个 `Timer` 数组来存储多个 Timer 对象。在窗体加载时,我们初始化 Timer 数组,并为每个 Timer 设置不同的间隔时间。当某个 Timer 的 Tick 事件触发时,我们根据 Timer 的索引来处理不同的事件。在按钮的 Click 事件中,我们可以通过遍历 Timer 数组来启动或停止所有 Timer。
阅读全文