简单倒计时与DateTime.Subtract()

软件工程的老师布置了一个任务,一个网络环境的 Turbo C 考试系统, 要求界面上有倒计时,由此.

  1. 拖放一个 Label 和一个 Timer 到主界面上,设置 Timer 的 Interval 为1000.
  2. 添加一个全局变量用以表示40分钟(考试时间)以后的时间点. 
    private DateTime endTime;
  3. 在窗口载入事件中设置 endTime 的具体值并且启用 Timer. 
    private void Form1_Load(object sender, EventArgs e)
    {
    endTime= DateTime.Now.AddMinutes(40);
    timer1.Enabled = true;
    }
  4. 在 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 类型.

2 Comments

发表评论

电子邮件地址不会被公开。 必填项已用*标注