Windows Forms Timer는 일정한 간격마다 이벤트를 발생시키는 구성 요소입니다.
주요 속성, 메서드, 이벤트 간격의 길이는 값이 밀리초 단위인 Interval 속성에 의해 정의됩니다.
구성 요소를 사용하도록 설정하면 Tick 이벤트가 간격마다 발생합니다. 여기서 실행할 코드를 추가합니다.
Timer 구성 요소의 주요 메서드는 Start 및 Stop이며 타이머를 켜고 끕니다.
타이머가 꺼지면 다시 설정됩니다.
(※ Timer 구성 요소를 일시 중지할 방법이 없습니다.)
1초 마다 시간을 표시하기
-윈도우 폼에 Button1이라는 Button 컨트롤, Timer1이라는 Timer 컨트롤, Label1이라는 Label 컨트롤을 배치합니다.
-Interval 속성은 1000(1초와 같음)으로 설정.
Timer1.Interval = 1000;
-Tick 이벤트에서 레이블의 캡션은 현재 시간을 넣어줍니다.
Label1.Text = DateTime.Now.ToString();
단추를 클릭하면 Enabled 속성이 false로 설정되어 타이머가 레이블 캡션 업데이트를 중지합니다.
if ( Button1.Text == "Stop" )
{
Button1.Text = "Start";
Timer1.Enabled = false;
}
else
{
Button1.Text = "Stop";
Timer1.Enabled = true;
}
코드는 다음과 같습니다.
private void InitializeTimer()
{
// Call this procedure when the application starts.
// Set to 1 second.
Timer1.Interval = 1000;
Timer1.Tick += new EventHandler(Timer1_Tick);
// Enable timer.
Timer1.Enabled = true;
Button1.Text = "Stop";
Button1.Click += new EventHandler(Button1_Click);
}
private void Timer1_Tick(object Sender, EventArgs e)
{
// Set the caption to the current time.
Label1.Text = DateTime.Now.ToString();
}
private void Button1_Click(object sender, EventArgs e)
{
if ( Button1.Text == "Stop" )
{
Button1.Text = "Start";
Timer1.Enabled = false;
}
else
{
Button1.Text = "Stop";
Timer1.Enabled = true;
}
}
600밀리초마다 프로시저를 실행하기
루프가 완료될 때까지 500밀리초마다 프로시저를 실행합니다.
우선 윈도우 폼에 Button1(Button 컨트롤), Timer1이라는 Timer 컨트롤, Label1이라는 Label 컨트롤을 우선 배치합니다.
// This variable will be the loop counter.
private int counter;
private void InitializeTimer()
{
// Run this procedure in an appropriate event.
counter = 0;
timer1.Interval = 500;
timer1.Enabled = true;
// Hook up timer's tick event handler.
this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
}
private void timer1_Tick(object sender, System.EventArgs e)
{
if (counter >= 10)
{
// Exit loop code.
timer1.Enabled = false;
counter = 0;
}
else
{
// Run your procedure here.
// Increment counter.
counter = counter + 1;
label1.Text = "Procedures Run: " + counter.ToString();
}
}
'공학속으로 > C#' 카테고리의 다른 글
C# 클립보드를 사용한 내용 복사하기 (0) | 2023.04.03 |
---|---|
C# CheckBox 컨트롤 사용법 (0) | 2023.04.03 |
c# 텍스트박스(TextBox) 에디트박스 사용법 정리 (0) | 2023.04.02 |
C# 텍스트 파일 합치기 (0) | 2023.03.06 |
C# 텍스트 파일 라인수로 분할하여 저장하기 (0) | 2023.03.06 |
댓글