我想为我的WinForms添加功能,以便在启动时启动计数器,这将是hh:mm。我知道这可以使用计时器完成。我制作了一个显示当前时间的时间标签,但我不知道如何在加载表单时启动计时器。是否有任何方法或类别?
答案 0 :(得分:2)
将Timer
组件放置到您的表单中(从ToolBox拖动它 - 这很重要,因为计时器应该注册为表单的组件,以便在表单关闭时正确处理)。将计时器的Interval
属性设置为60000
(等于一分钟)。并订阅Tick
事件:
void timer1_Tick(object sender, EventArgs e)
{
if (endTime < DateTime.Now)
{
MessageBox.Show("Time is out!");
timer1.Stop();
return;
}
timeLabel.Text = (endTime - DateTime.Now).ToString(@"hh\:mm");
}
在Form_Load事件处理程序启动计时器并保存倒计时结束时间:
private DateTime endTime; // field to store end time
void Form1_Load(object sender, EventArgs e)
{
endTime = DateTime.Now.AddMinutes(120); // set countdown to 120 minutes
timer1.Start();
}
答案 1 :(得分:1)
计时器的创建非常简单直接:
Timer t1 = new Timer();
t1.Interval = 100;
t1.Tick+=new EventHandler(t1_Tick);
t1.Start();
void t1_Tick(object sender, EventArgs e)
{
}
有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/system.timers.timer(v=vs.80).aspx