여기는 아까 했던 신호등과 비슷한 알고리즘에 조금만 변형된 것이다.

움짤은 사진 여러장을 빠른 속도로 바꿔가면서 움직이도록 하는 것이다.

그러니 사진 여러장을 준비하고. 다음과 같이 사진의 장 수만큼 값을 정해준다.

전역변수로 설정해 다른 함수에서도 이 값을 끌어올 수 있다.

		Dim Sajin_1 As Integer = 1
    Dim Sajin_1_MAX As Integer = 9
    Dim Sajin_2 As Integer = 1
    Dim Sajin_2_MAX As Integer = 18
    Dim Sajin_3 As Integer = 1
    Dim Sajin_3_MAX As Integer = 12
    Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
        PictureBox1.Image = Image.FromFile(CurDir() & "\\퍼즐\\" & Sajin_1 & ".jpg")
        Sajin_1 += 1
        If Sajin_1 > Sajin_1_MAX Then
            Sajin_1 = 1
        End If
    End Sub
    Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick
        PictureBox2.Image = Image.FromFile(CurDir() & "\\큐브\\" & Sajin_2 & ".jpg")
        Sajin_2 += 1
        If Sajin_2 > Sajin_2_MAX Then
            Sajin_2 = 1
        End If
    End Sub
    Private Sub Timer3_Tick(sender As Object, e As EventArgs) Handles Timer3.Tick
        PictureBox3.Image = Image.FromFile(CurDir() & "\\시계\\" & Sajin_3 & ".jpg")
        Sajin_3 += 1
        If Sajin_3 > Sajin_3_MAX Then
            Sajin_3 = 1
        End If
    End Sub

이후 각각의 타이머가 움직이며 사진이 바뀌도록 설정한다.

그 다음 스크롤바를 움직이면 값이 변하도록 하는 코드이다

Private Sub HScrollBar1_Scroll(sender As Object, e As ScrollEventArgs) Handles HScrollBar1.Scroll
        Timer1.Interval = HScrollBar1.Value
    End Sub

    Private Sub HScrollBar2_Scroll(sender As Object, e As ScrollEventArgs) Handles HScrollBar2.Scroll
        Timer2.Interval = HScrollBar2.Value
    End Sub

    Private Sub VScrollBar1_Scroll(sender As Object, e As ScrollEventArgs) Handles VScrollBar1.Scroll
        Timer3.Interval = VScrollBar1.Value
    End Sub

이후 코드는 아주 단순하다. 그래서 길다.

' 맞춰지는 퍼즐 ---------------------------------------------------------------------
    Private Sub 빠르게ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 빠르게ToolStripMenuItem.Click
        Timer1.Interval = 10
    End Sub
    Private Sub 보통ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 보통ToolStripMenuItem.Click
        Timer1.Interval = 100
    End Sub
    Private Sub 느리게ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 느리게ToolStripMenuItem.Click
        Timer1.Interval = 500
    End Sub
    ' 맞춰지는 퍼즐 ---------------------------------------------------------------------

    ' 큐브 아트 ---------------------------------------------------------------------
    Private Sub 빠르게ToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles 빠르게ToolStripMenuItem1.Click
        Timer2.Interval = 10
    End Sub
    Private Sub 보통ToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles 보통ToolStripMenuItem1.Click
        Timer2.Interval = 100
    End Sub
    Private Sub 느리게ToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles 느리게ToolStripMenuItem1.Click
        Timer2.Interval = 500
    End Sub
    ' 큐브 아트 ---------------------------------------------------------------------

    ' 움직이는 시계 ---------------------------------------------------------------------
    Private Sub 빠르게ToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles 빠르게ToolStripMenuItem2.Click
        Timer3.Interval = 10
    End Sub
    Private Sub 보통ToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles 보통ToolStripMenuItem2.Click
        Timer3.Interval = 100
    End Sub
    Private Sub 느리게ToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles 느리게ToolStripMenuItem2.Click
        Timer3.Interval = 500
    End Sub
    ' 맞춰지는 퍼즐 ---------------------------------------------------------------------
    Private Sub 빠르게ToolStripMenuItem3_Click(sender As Object, e As EventArgs) Handles 빠르게ToolStripMenuItem3.Click
        Timer1.Interval = 10
        Timer2.Interval = 10
        Timer3.Interval = 10
    End Sub
    Private Sub 보통ToolStripMenuItem3_Click(sender As Object, e As EventArgs) Handles 보통ToolStripMenuItem3.Click
        Timer1.Interval = 100
        Timer2.Interval = 100
        Timer3.Interval = 100
    End Sub
    Private Sub 느리게ToolStripMenuItem3_Click(sender As Object, e As EventArgs) Handles 느리게ToolStripMenuItem3.Click
        Timer1.Interval = 500
        Timer2.Interval = 500
        Timer3.Interval = 500
    End Sub

그 이외의 기능은 다음과 같이 정리한다.