2 초 후에 비트를 삭제 하시겠습니까? 이 같은 것이 작동해야합니다 :
private void button1_Click(object sender, EventArgs e)
{
// Prevent multiple button clicks
button.Enabled = false;
PortAccess.Output(888, 1);
Timer timer = new Timer { Interval = 2000 };
timer.Tick += HandleTimerTick;
timer.Start();
}
private void HandleTimerTick(object sender, EventArgs e)
{
Timer timer = (Timer) sender;
timer.Stop();
timer.Dispose();
button.Enabled = true;
PortAccess.Output(888, 0);
}
타이머를 한 번 설정하고 인스턴스 변수로 저장하는 것이 더 간단 할 수 있습니다. 그런 다음 Tick
이벤트를 첨부하고 구성시 간격을 설정하여 양식의 구성 요소에 추가하여 자동으로 삭제되도록 할 수 있습니다. 귀하의 방법은 다음과 같습니다 :
private void button1_Click(object sender, EventArgs e)
{
button.Enabled = false;
PortAccess.Output(888, 1);
timer.Start();
}
private void HandleTimerTick(object sender, EventArgs e)
{
timer.Stop();
button.Enabled = true;
PortAccess.Output(888, 0);
}
나는 당신이하고 싶은 것을 이해할 수 없습니다. 왜 타이머가 필요하니? 2 초간 지연? 예를 들어 –