c# 记录两个时间间隔

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# 记录两个时间间隔相关的知识,希望对你有一定的参考价值。

比如我按下按钮1,然后记录一个时间,按下按钮2,记录另一个时间。首先,这两个时间应该是什么类型的?然后怎么求出这两个时间的间隔?

// 按钮1
DateTime Time1 = DateTime.Now;

// 按钮2
DateTime Time2 = DateTime.Now;

// Difference in days, hours, and minutes.
TimeSpan ts = Time2 - Time1;
// Difference in ticks.
int difference = ts.TotalMilliseconds; //毫秒单位,也可以用Ticks,1 ticks=100 纳秒
参考技术A 首先这两个时间类型应该是DATA类型。计算间隔:将两个时间转化为int类型进行相减得到相应的间隔。 参考技术B 建议使用 System.Diagnostics.Stopwatch;

var sw = new System.Diagnostics.Stopwatch();
sw.Start();
.......
sw.Stop();
Console.WriteLine(sw.Elapsed.TotalMilliseconds);
参考技术C datetime 类型
DateTime.Compare(dt1,dt2)

C# 使用Timer控件设置时间间隔

       Timer 控件可以定期引发事件,该控件是为 Windows 窗体环境设计的。时间间隔的长度由 Interval 属性定义,其值以毫秒为单位。若启用了该组件,则每个时间间隔引发一个 Tick 事件,在该事件中添加要执行的代码。如图1 所示为 Timer 控件。

图1 Timer 控件

       Interval 属性用于设置计时器开始计时的时间间隔。

       语法如下:

       public int interval { get; set; }                                                                    

       属性值:计时器每次开始计时之间的毫秒数,该值不小于 1。

      当指定的计时器间隔已过去,而且计时器处于启用状态时会引发控件的 Tick 事件,Enabled 属性用于设置是否启用计时器。

      语法如下:

      public virtual bool Enabled { get; set; }                                                     

      属性值:如果计时器当前处于启用状态,则为 true;否则为 false。默认为 false。

【例1】 创建一个 Windows 应用程序,窗体加载时,设置 Timer 控件的 Interval 属性为 1000毫秒(1 秒),使计时器的时间间隔为1秒。然后在 Timer 控件的 Tick 事件中,使文本框中显示当前的系统时间。在按钮的 Click 事件中设置 Enabled 属性,以启用或停止计时器。

代码如下:

private void Form1_Load(object sender, EventArgs e)
{
     timer1.Interval = 1000;                          //设置 Interval 属性为 1000 毫秒 
}
private void timer1_Tick(object sender, EventArgs e) // timer1 控件的 Tick 事件
{
     textBox1.Text = DateTime.Now.ToString();       //获取系统当前日期 
}
private void button1_Click(object sender, EventArgs e)
{
     if(button1.Text =="开始")                     //判断按钮的 Text 属性是否为 “开始” 
     {
          timer1.Enabled = true;                  //启动 timer1 控件 
          button1.Text ="停止";                   //设置按钮的 Text 属性为 “停止” 
      }
      else                                       //否则 
      {
          timer1.Enabled = false;                //停止 timer1 控件 
          button1.Text="开始";                   //设置按钮的 Text 属性为 “开始” 
      }
}

程序的运行结果如图2 所示。

图2  制作系统时钟

说明

  在启动和停止计时器时,也可以应用Start和Stop方法来实现。

- END -



关注小编不迷路呦~

以上是关于c# 记录两个时间间隔的主要内容,如果未能解决你的问题,请参考以下文章

C#中计算两个时间间隔值

C# 计算两个日期的时间间隔

C# 计算两个日期的时间间隔

C# 计算两个日期的时间间隔

C# 如何计算两个这个字符串格式的时间00:00:00的间隔

两个日期之间的时间间隔返回 nil