一、数字时钟 -- DigitalClock

1. 这个小程序的思路是:通过 “DateTime.Now.Minute” 之类的函数获取当前的时间,然后通过 Timer 类型变量的 Tick 函数根据指定的时间间隔运行指定的函数来显示时间。

t.Tick += new EventHandler(this.t_Tick);

2. 由于 Form1 函数及 t_Tick 函数都需要访问 Timer 类型变量,因此需要在两个函数之外进行声明;

3. 分钟数或秒数为个位数时,为了保证显示格式的一致(如“05:08”而不是“5:8”),需要在对应的分钟数或秒数之前附加字符 “0”。

 

二、秒表 -- StopWatch

1. 程序思路:①点击第一个按钮开始计时,让 stopWatch 和 timer1 同时开始计时,显示累计时间,并让 Reset 按钮不可用;②点击第二个按钮停止计时,让 stopWatch 和 timer1 同时停止计时,显示累计时间;③点击第三个按钮重置计时,时间数字归零。

选用 Stopwatch 类来计时的原因:Is DateTime.Now the best way to measure a function's performance?

Stopwatch 类参考链接:Stopwatch Class

2. 由于已经在 Design 界面拖了一个 timer 控件进来,所以不需要再手写 timer 控件的初始化代码了,刚开始没有弄明白这个问题,所以 VS 一直提示已有重名的控件;

3. 程序本质上其实和数字时钟这个程序是相同的,只不过一个是显示当前的时刻,一个是显示本程序已运行时间(代码如下)。

1 TimeSpan timeSpan = stopWatch.Elapsed;
2 label1.Text = String.Format("{0:00}:{1:00}", timeSpan.Minutes, timeSpan.Seconds);

参考链接:C#秒表相关代码

posted on 2015-01-02 21:17  dream4ever  阅读(775)  评论(0编辑  收藏  举报