- 拖放一个 Label 和一个 Timer 到主界面上,设置 Timer 的 Interval 为1000.
- 添加一个全局变量用以表示40分钟(考试时间)以后的时间点.
private DateTime endTime;
- 在窗口载入事件中设置 endTime 的具体值并且启用 Timer.
private void Form1_Load(object sender, EventArgs e)
{
endTime= DateTime.Now.AddMinutes(40);
timer1.Enabled = true;
}
- 在 Timer 的 Tick 事件中用 endTime 减去当前时间来获得剩余时间,籍此来实现倒计时.
private void timer1_Tick(object sender, EventArgs e)
{
DateTime show = start.Subtract(new TimeSpan(DateTime.Now.Ticks));
label1.Text = show.ToLongTimeString();
}
注意这个方法: DateTime.Subtract() ,它有+1个重载:
DateTime Subtract(TimeSpan) 和 TimeSpan Subtract(DateTime ) , 当参数为 DateTime 类型时,返回值为 TimeSpan 类型,当参数为 TimeSpan 时,返回值为 DateTime 类型.