使用Timer控件做一个倒计时器
可以根据输入的值来控制倒计时的事件。
假设输入的是180s
第一次点开始按钮是 180 179 178 ......正常的
点了重置按钮之后,第二次点开始按钮就是 180 178 176.....
再次重置并且点击开始按钮之后,变成 180 177 174...
...
这些间隔都是1s
这是什么情况?如何解决?
以下为简化版的代码:
private void buttonSetTimeStart_Click(object sender, EventArgs e)
{
this.Clock = 180;
this.timerSetTime.Enabled = true;
this.timerSetTime.Tick += new EventHandler(timerSetTime_Tick);
this.timerSetTime.Start();
}
void timerSetTime_Tick(object sender, EventArgs e)
{
Clock--;
this.labelSetTimeMinute.Text = Clock.ToString();
if (Clock == 0)
{
this.timerSetTime.Stop();
}
}
private void buttonSetTimeReset_Click(object sender, EventArgs e)
{
this.timerSetTime.Enabled = false;
this.timerSetTime.Stop();
this.timerSetTime.Interval = 1000;
this.labelSetTimeMinute.Text = "";
}