永发信息网

如何将C#中的定时器改为24小时制?

答案:2  悬赏:0  手机版
解决时间 2021-03-07 18:38
如何将C#中的定时器改为24小时制?
最佳答案
using System;

namespace ConsoleApplication4
{
    // 重新封装System.Timers.Timer
    public class MyTimer : System.Timers.Timer
    {
        /// 
        /// 获取或设置定时间隔。设置的格式如下:
        /// MyTimer.Interval = "20:30:15"
        /// 

        public new string Interval
        {
            get
            {
                TimeSpan ts;
                double v = base.Interval;
                ts = new TimeSpan((long)(v * 10 * 1000));
                return ts.ToString();
            }
            set
            {
                TimeSpan ts = TimeSpan.Parse(value);
                double v = ts.TotalMilliseconds;
                base.Interval = v;
            }
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            // 测试 MyTimer
            MyTimer timer = new MyTimer();
            // 设置定时间隔为5秒
            timer.Interval = "00:00:05";
            timer.Elapsed += timer_Elapsed;
            timer.Start();
            Console.ReadLine();
            timer.Stop();
        }

        static void timer_Elapsed(object sender, 
            System.Timers.ElapsedEventArgs e)
        {
             MyTimer t = sender as MyTimer;
            Console.WriteLine(t.Interval);
        }
    }
}
全部回答
比较稳妥的做法是:设置一个比较小的时间间隔,比如1分钟,即 interval = 60000。理由是:如果你设置定时间隔为2小时,即interval=7200000,那么tick事件每2小时发生一次。假如程序运行时由于某种原因,2小时一到而没用执行tick事件处理,那你还得在等2个小时。 假设定时间隔为60000(即1分钟),代码如下: int minutes = 0; private void timer1_tick(object sender, eventargs e)  {             //分钟数加1             minutes++;             if ((minutes >=120)             {                 // 分钟数清零,准备下次查询                 minutes = 0;                 //在此执行你的查询             } }请注意上面代码的判断条件: minutes >=120 这样写,即使程序在2小时一到而没用执行tick事件处理,但在接下来的1分钟后,依然会执行你要求的操作
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
烟草局把烟拿去还能退钱吗?
win10怎么锁定输入法
洗衣机离合器上部大螺母下大垫圈取不下,有什
妈妈咪呀 那首try原唱是谁?就是那个庄芷婕唱
胆子那么小,还怎么学车开车啊,今晚是手
阜宁县吴滩春升服装厂地址在哪,我要去那里办
刀把萝卜种植时间,是否起笼种植还是平地种植
开个小型咖啡店要多少钱
有一首歌的歌词是亲爱的朋友们准备外面的世界
含芳阁老北京布鞋怎么去啊,有知道地址的么
【母校我想对你说】关于母校我想对你说的作文
扬州租房贵不贵
开不了机,每次开机过一会就闪了一下蓝屏,就
吕家大院地址在什么地方,想过去办事
用纸怎么能叠出裤子来?
推荐资讯
雷允上可以加盟吗?绝对是好选择!
如何在期末考好?超常发挥!
396➗4X9的得数是多少?
赢时通租车要什么手续?有免押金的吗?
creo 3.0 m060 如何将装配图裁剪一部分
河北邯郸的电话区号是多少?大神们帮帮忙
黑豆红枣汤放冰糖还是红糖好呢
1901年,法国探险队在两河流域的苏撒遗迹中发
【想哭却哭不出来】形容想哭却哭不出来的成语
唯一精品格子店我想知道这个在什么地方
文化体育广场这个地址在什么地方,我要处理点
金安药店这个地址在什么地方,我要处理点事
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?