바뀌는 신호등을 만들려면 가장 먼저 규칙을 만들어서 코드로 작성해야된다.
적색 → 노란색 → 녹색 → 노란색
이 주기를 거치면 신호등이라고 볼 수 있다.
Dim Sinhodoong_Color = 1 '신호등 색깔 초기값
Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Call ChangeSinhodoong(0)
End Sub
프로그램이 시작하면 준비중인 신호등이 보이도록 초기값을 정해준다.
여기서 ChangeSinhodoong에 수치 0을 매개변수로 보내 함수를 불러온다.
Private Sub ChangeSinhodoong(ByVal Color As Byte)
Select Case Color
Case 0
PictureBox1.Image = Image.FromFile(CurDir() & "\\신호등(준비중).png")
Case 1
PictureBox1.Image = Image.FromFile(CurDir() & "\\신호등(적색).png")
Case 2
PictureBox1.Image = Image.FromFile(CurDir() & "\\신호등(노랑색).png")
Case 3
PictureBox1.Image = Image.FromFile(CurDir() & "\\신호등(녹색).png")
Case 4
PictureBox1.Image = Image.FromFile(CurDir() & "\\신호등(노랑색).png")
End Select
End Sub
신호등이 주기에 맞춰 변화하도록 설계를 한다. 타이머가 돌아갈 때마다 수치가 1 올라가도록 설정한다.
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Call ChangeSinhodoong(Sinhodoong_Color)
Sinhodoong_Color = Sinhodoong_Color + 1
If Sinhodoong_Color = 4 Then
Sinhodoong_Color = 1
End If
End Sub
이 부분은 타이머가 돌아가면 신호등 컬러값을 1씩 증가시키면서 함수에 그 값을 보내는 역할을 한다.
즉 이 세가지 함수를 통해 프로그램이 작동하는 것이다. 계속해서 주기적으로 변화하는 것은 Timer1.Tick이다.