본문 바로가기
Study/C#(Window programming)

C#기초(타이머)

by Answer Choi 2015. 7. 20.
반응형


타이머 예제


지난 버튼 예제에서 타이머를 추가해 보겠습니다.



위 사진에서 빨간색으로 박스해놓은 버튼 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

인기글