以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 Dot NET,C#,ASP,VB 』  (http://bbs.xml.org.cn/list.asp?boardid=43)
----  ASP,C#编程  (http://bbs.xml.org.cn/dispbbs.asp?boardid=43&rootid=&id=56210)


--  作者:guansiwen
--  发布时间:11/30/2007 8:18:00 AM

--  ASP,C#编程
本人想用c#编写一个计时器,不知哪位高手可以帮我一下,急需    如有答案  联系QQ:854751917   谢谢!!!!!!!!!!~~~~~~~~~~~~~~~~
--  作者:guansiwen
--  发布时间:11/30/2007 9:42:00 AM

--  
各位大侠  来了给点答案好不!!!~~~
--  作者:卷积内核
--  发布时间:2/1/2008 10:54:00 AM

--  
1.用.net建立一个Windows应用程序
2.在项目下添加一个类命名为“Time“
3.编写“Time“类得实现代码
4.在窗体中放两个Label控件和一个时钟(Timer)控件
5.编写窗体得Load事件和(Timer)控件的Tick事件

以下是“Time“类得实现代码:
public class Time
{
  private int hours;  //小时
  private int minutes; //分钟
  private int seconds; //秒钟
  
  public Time()
  {
   this.hours = 0;
   this.minutes = 0;
   this.seconds = 0;
  }

  public Time(int hours,int minutes,int seconds)
  {
   this.hours = hours;
   this.minutes = minutes;
   this.seconds = seconds;
  }

  public void SetHours(int hours)
  {
   this.hours = hours;
  }

  public void SetMinutes(int minutes)
  {
   this.minutes = minutes;
  }

  public void SetSeconds(int seconds)
  {
   this.seconds = seconds;
  }

  public int GetHours()
  {
   return this.hours;
  }

  public int GetMinutes()
  {
   return this.minutes;
  }

  public int GetSeconds()
  {
   return this.seconds;
  }

  public static Time operator ++(Time time)
  {
   time.seconds++;
   if (time.seconds >= 60)
   {
    time.minutes++;
    time.seconds = 0;
    if (time.minutes >= 60)
    {
     time.hours++;
     time.minutes = 0;
     time.seconds = 0;
     if (time.hours >= 24)
     {
      time.hours = 0;
      time.minutes = 0;
      time.seconds = 0;
     }
    }
   }
   return new Time(time.hours,time.minutes,time.seconds);
  }
}

以下是Load事件和Timer控件的Tick事件处理程序:
private void Form1_Load(object sender, System.EventArgs e)
  {
   DateTime dtime = DateTime.Now;
   int hour = dtime.Hour;
   int minute = dtime.Minute;
   int second = dtime.Second;
   time = new Time(hour,minute,second);
   this.label1.Text = "当前时间是:" + hour + ":" + minute + ":" + second;
   this.timer1.Start();
  }
private void timer1_Tick(object sender, System.EventArgs e)
  {
   time++;
   this.label2.Text = "时间在流逝:" + time.GetHours() + ":" + time.GetMinutes() + ":" + time.GetSeconds();
  }


--  作者:netjian
--  发布时间:2/16/2008 11:57:00 PM

--  
版主你真是热心。呵呵。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
218.750ms