千家信息网

C#线程倒计时器的示例分析

发表于:2025-11-20 作者:千家信息网编辑
千家信息网最后更新 2025年11月20日,这篇文章给大家分享的是有关C#线程倒计时器的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下using System;using System.Colle
千家信息网最后更新 2025年11月20日C#线程倒计时器的示例分析

这篇文章给大家分享的是有关C#线程倒计时器的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

具体内容如下

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading;using System.Windows.Forms;namespace ListZZBG{class TimeHeleper{Thread thread;private TimeSpan time; //计时时间 private TimeSpan endTime; //到点时间 private Label lb;private bool whereExit = true;///  /// 设定计时器计时的时间 ///  /// 计时器时间,如:01:00:00 既1小时 public TimeHeleper(TimeSpan StartTime, Label lb){time = StartTime;this.lb = lb;}public void ShowLabel(){lb.Text = time.ToString();}///  /// 获取时间 ///  ///  public TimeSpan GetTime(){return time;}///  /// 开启计时器 ///  public void Open(){//计算到点时间 TimeSpan tsNow = TimeSpan.Parse(DateTime.Now.ToString("HH:mm:ss"));TimeSpan tsAdd = time;endTime = tsNow + tsAdd;//线程开始 whereExit = false;thread = new Thread(TimeThreadStart);thread.IsBackground = true;thread.Start();}///  /// 关闭计时器 ///  public void Close(){whereExit = true;thread.Join(1000);}private void TimeThreadStart(){while (!whereExit){RunTime();Thread.Sleep(1000);}}private delegate void RunTimeDelegate();private void RunTime(){if (lb.InvokeRequired){RunTimeDelegate d = RunTime;lb.Invoke(d);}else{time = endTime - TimeSpan.Parse(DateTime.Now.ToString("HH:mm:ss"));string[] sp = time.ToString().Split(':');lb.Text = sp[2].ToString();  //liable1控件}}}}

感谢各位的阅读!关于"C#线程倒计时器的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0