首页 > 其他 > 详细

倒计时功能实现

时间:2019-05-05 22:47:07      阅读:131      评论:0      收藏:0      [点我收藏+]
 1 //Program.cs
 2 using System;
 3 using System.Collections.Generic;
 4 using System.Linq;
 5 using System.Threading.Tasks;
 6 using System.Windows.Forms;
 7 
 8 namespace TimerExc01
 9 {
10     static class Program
11     {
12         /// <summary>
13         /// 应用程序的主入口点。
14         /// </summary>
15         [STAThread]
16         static void Main()
17         {
18             Application.EnableVisualStyles();
19             Application.SetCompatibleTextRenderingDefault(false);
20             Application.Run(new Form1());
21         }
22     }
23 }
  1 //Form1.cs
  2 using System;
  3 using System.Collections.Generic;
  4 using System.ComponentModel;
  5 using System.Data;
  6 using System.Drawing;
  7 using System.Linq;
  8 using System.Text;
  9 using System.Threading.Tasks;
 10 using System.Windows.Forms;
 11 
 12 namespace TimerExc01
 13 {
 14     public partial class Form1 : Form
 15     {
 16         private int time = 0;
 17         private int FirstSecond = 0;//启动程序时的时间
 18         private int FirstHour = 0;
 19         private int FirstMinute = 0;
 20 
 21         public Form1()
 22         {
 23             InitializeComponent();
 24         }
 25 
 26         private void tmrCountTime_Tick(object sender, EventArgs e)
 27         {
 28             time++;
 29             int currentHour = time / 3600;
 30             int currentMinu = (time % 3600) / 60;
 31             int currentSecond = (time % 3600) % 60;
 32             this.tbxTime.Text = currentHour + "" + currentMinu + "" + currentSecond + "";
 33         }
 34 
 35         private void btnStart_Click(object sender, EventArgs e)
 36         {
 37             this.tmrCountTime.Enabled = true;
 38         }
 39 
 40         private void btnStop_Click(object sender, EventArgs e)
 41         {
 42             time = 0;
 43             this.tmrCountTime.Enabled = false;
 44         }
 45 
 46         #region 界面加载
 47         private void Form1_Load(object sender, EventArgs e)
 48         {
 49             DateTime datetime = System.DateTime.Now;
 50             this.numHour.Value = datetime.Hour;
 51             this.numMinu.Value = datetime.Minute;
 52             this.numSecond.Value = datetime.Second;
 53             FirstSecond = datetime.Second;//记录下最初的秒数
 54             FirstMinute = datetime.Minute;
 55             FirstHour = datetime.Hour;
 56             tmrCurrentTime.Enabled = true;
 57         }
 58         #endregion
 59 
 60         #region 定时器更新当前系统时间
 61         int countSecond = 0;
 62         private void tmrCurrentTime_Tick(object sender, EventArgs e)
 63         {
 64             int currentMinu = 0; int currentHour = 0;
 65             countSecond += 1;
 66             //最初的秒加上定时器走过的秒
 67             int PastSumAllSecond = FirstSecond + countSecond;
 68 
 69             //求小时数
 70             int hour = PastSumAllSecond / 3600;
 71 
 72             int leftSecond = PastSumAllSecond % 3600;
 73 
 74             //求分钟数
 75             int minute = leftSecond / 60;
 76 
 77             //求秒数
 78             int Second = leftSecond % 60;
 79 
 80 
 81             int resulSecond = FirstSecond + Second;
 82 
 83             //if (resulSecond >= 60)
 84             //{
 85             //    this.numSecond.Value = resulSecond % 60;
 86             //}
 87             //else
 88             //{
 89             this.numSecond.Value = Second;
 90             //}
 91             currentMinu  = FirstMinute + minute;
 92 
 93             if (currentMinu > 60)
 94             {
 95                 this.numMinu.Value = currentMinu % 60;
 96 
 97             }else if(currentMinu==60)
 98             {
 99                 FirstHour++;
100                 //currentHour = FirstHour + hour + 1;
101                 this.numMinu.Value = 0;
102             }
103             else
104             {
105                 currentMinu = FirstMinute + minute;
106                 this.numMinu.Value = currentMinu;
107             }
108 
109             
110             //更新界面小时,分钟,秒
111             if (currentHour > 24)
112             {
113                 this.numHour.Value = currentHour % 24;
114             }else if(currentHour==24)
115             {
116                 this.numHour.Value = 0;
117             }
118             else
119             {
120                 currentHour = FirstHour + hour;
121                 this.numHour.Value = currentHour;
122             }
123         }
124         #endregion
125 
126         #region 定时关机按钮
127         private void btnClosePC_Click(object sender, EventArgs e)
128         {
129             string cmd = "shutdown -r-t";
130         }
131         #endregion
132 
133         private void NumHour_ValueChanged(object sender, EventArgs e)
134         {
135 
136         }
137     }
138 }

 

倒计时功能实现

原文:https://www.cnblogs.com/palebluestarrysky/p/10816793.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!