반응형
지난 버튼 예제에서 타이머를 추가해 보겠습니다.
위 사진에서 빨간색으로 박스해놓은 버튼 2개, 텍스트 2개, 타이머 1개를 추가하였습니다.
시작을 누르면 타이머가 동작하고, 종료를 누르면 타이머가 종료되도록 해보겠습니다.
일단 타이머 카운터를 위해 전역변수를 하나 추가해 줍니다.
1 | int timerCount = 0; | cs |
그리고 버튼 클릭 부분입니다.
1 2 3 4 5 6 7 8 9 10 11 | private void button1_Click(object sender, EventArgs e) { timer1.Start(); } private void button2_Click(object sender, EventArgs e) { timer1.Stop(); timerCount = 0; timerText.Text = "00:00:00"; } | cs |
Line 1~4는 시작 버튼이고, Line 6~11은 종료 버튼입니다.
시작버튼을 누르면 타이머 동작을 시작하고, 종료버트을 누르면 타이머를 종료시키고 변수와 텍스트를 초기화 합니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | private void timer_display(object sender, EventArgs e) { timerCount++; int sec = 0, min = 0, hour = 0; if (timerCount < 60) { sec = timerCount; } else if (timerCount < 3600) { min = timerCount / 60; sec = timerCount % 60; } else { hour = timerCount / 3600; min = (timerCount % 3600) / 60; sec = ((timerCount % 3600) % 60); } timerText.Text = hour.ToString("00")+":"+min.ToString("00")+":"+sec.ToString("00"); } | cs |
이 부분은 정해놓은 시간마다 들어오게 되는 Tick 부분입니다.
이 부분에서 카운터 변수를 추가시키고, 텍스트로 뿌려줄 변수들을 계산해서 뿌려주게 됩니다.
Line 22의 ToString()은 스트링으로 바꿔주는 부분이며, toString()안의 "00"은 2자리로 만들어 주는 겁니다.
타이머 설정은 쉽게 할 수 있는데요.
타이머를 선택하시고 오른쪽 아래 속성을 보시면 됩니다.
Interval이 주기~
1초마다 카운터할꺼니깐 1000(밀리초 단위입니다.)
번개모양을 누르시면 Tick이라고 나오는데 호출할 함수입니다.
이제 실행해 봅시다.
실행 모습입니다.
시작을 누르면
타이머가 동작을 하며 시간으로 변환해서 텍스트로 뿌려주게 됩니다.
반응형
'Study > C#(Window programming)' 카테고리의 다른 글
C# Tip (디버깅중 코드 수정하기) (0) | 2015.07.24 |
---|---|
C#기초(리스트 뷰) (0) | 2015.07.23 |
C#기초(check box) (0) | 2015.07.22 |
c#기초(radio button) (1) | 2015.07.21 |
C# 기초(버튼) (4) | 2015.07.17 |