本文主要介绍了C#使用timespan计算时间的相关信息,并通过一个实例代码介绍了C#使用TimeSpan和timer完成一个简单的倒计时定时器的方法。有需要的朋友可以参考一下。下面就让我们和边肖一起学习吧。
本文告诉大家简单的方法进行时间计算。
其实用TimeSpan可以让代码更容易理解,代码也很简单。
例如,我使用下面的代码来表示5秒。
const int needCount=5 * 1000
因为delay是后面用的,delay的代码很简单。
任务。延迟(需求计数)
这时候传进去一毫秒,但是很多朋友问为什么5*1000就是5秒。他不知道我用的是毫秒。
所以建议用TimeSpan来写时间。以下要求是判断启动20秒内的延时。如果应用程序在启动后20秒内启动,则需要延迟时间。
var needTime=TimeSpan。from seconds(20);USB开机后加载了20秒左右。
可以使用重载和-来计算时间的减法或加法。请看下面这段代码,是减去两个timespan,返回值也是一个timespan。以下代码无法编译。
var chikesereHearpawwirboo=need time-max delay;
控制台。WriteLine(chikesereHearpawwirboo);
如果您需要从毫秒切换到时间跨度,请参见下面的代码。
//毫秒到时间跨度
var毫秒=5 * 1000;
var time=TimeSpan。FromMilliseconds(毫秒);
//时间跨度到毫秒
毫秒=(int)时间。total毫秒;
因为秒到毫秒的值是double,所以需要转换。如果使用int转换,有时会越界。建议使用以下代码。
//毫秒到时间跨度
长毫秒=5 * 1000;
var time=TimeSpan。FromMilliseconds(毫秒);
//时间跨度为毫秒
毫秒=(long)数学。天花板(时间。total毫秒);
这种计算适用于日、小时等的计算。比如一天减3h10m是多少毫秒。如果不用TimeSpan自己重写,还是需要写很多代码。
var time=TimeSpan。from days(1);
var cut=new TimeSpan(0,3,10,0);
var毫秒=(long)(时间切割)。total毫秒;
尽量不用TimeSpan,想想怎么写。
C#使用timespan和timer完成一个简单的倒计时器
首先,timespan数据类型用于构建它,如下所示:
TimeSpan ts=新
TimeSpan(0,45,0);
这样,就声明了45分钟的时间段,其中构造函数参数的含义为:
TimeSpan(小时、分钟、秒);
然后拖入一个名为定时器1的定时器。
定时器1。区间=1000;
设置每秒一个周期。
将此写入定时器的滴答事件:
私人的
void定时器1_Tick(对象
发送者,EventArgs e)
{
字符串str=ts。Hours.ToString()':'
ts。Minutes.ToString()':'
ts。秒. ToString();
标签17。Text=str//label17用于显示剩余时间
ts=ts。减去(新
TimeSpan(0,0,1));//每隔一秒减一秒
如果
(ts。TotalSeconds 0.0)//当倒计时结束时
{
定时器1。Enabled=false
MessageBox。Show('考试时间到了,系统会强行交卷');//时间到了,可以在下面添加你想要的操作。
}
}
一个简单的倒计时器就这样完成了,呵呵,不看不知道。乍一看很简单。
总结
这就是本文的全部内容。希望这篇文章的内容对你的学习或工作有一定的参考价值。有问题可以留言交流。谢谢你的支持。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。