在 Visual Basic 中使用定时器制作动画?

Animation with Timer in Visual Basic?

我正在尝试使用计时器在单击按钮时创建动画。这是我的代码:

Private Sub Animate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Animate.Click
        Timer.Enabled = True
End Sub
Private Sub Timer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer.Tick
    Dim m As Integer = 0
    m = m + 1

    Select Case m
        Case 1
            Me.Arrow4.Visible = True
            Me.Arrow5.Visible = True
            Me.Arrow6.Visible = True
        Case 2
            Me.Arrow1.Visible = True
            Me.Label1.Visible = True
            Me.Arrow4.Visible = False
            Me.Arrow5.Visible = False
            Me.Arrow6.Visible = False
        Case 3
            Me.Arrow2.Visible = True
            Me.Label2.Visible = True
            Me.Arrow1.Visible = False
            Me.Label1.Visible = False
        Case 4
            Me.Arrow3.Visible = True
            Me.Label3.Visible = True
            Me.Arrow2.Visible = False
            Me.Label2.Visible = False
    End Select
End Sub

第一个案例显示,但其余情况不显示。我将定时器的时间间隔设置为 1。

谢谢!

其余情况将永远不会显示,因为您总是在计时器方法的范围内将 m 实例化为 0。当 case 语句被命中时,m 将始终为 1。如果要保留该值,则需要将 m 移动到 class 级别的计时器范围之外。当您遇到最后一个案例时,请不要忘记将 m 设置回 0。例如

...

Case 4
   Me.Arrow3.Visible = True
   Me.Label3.Visible = True
   Me.Arrow2.Visible = False
   Me.Label2.Visible = False
   m = 0     

...