C#實(shí)現(xiàn)多個(gè)計(jì)時(shí)器記錄不同定時(shí)時(shí)間
本文實(shí)例為大家分享了C#實(shí)現(xiàn)多個(gè)計(jì)時(shí)器記錄不同定時(shí)時(shí)間的具體代碼,供大家參考,具體內(nèi)容如下
1.定義Timer類(lèi)、定義委托
//定義Timer類(lèi) System.Threading.Timer t3,t1,t2,t4; //定義委托 public delegate void SetControlValue(object value);
2.初始化
private void InitTimer()//初始化 { t1= new System.Threading.Timer(new TimerCallback(T1), null, Timeout.Infinite, 1000); t2 = new System.Threading.Timer(new TimerCallback(T2), null, Timeout.Infinite, 1000); t3 = new System.Threading.Timer(new TimerCallback(T3), null, Timeout.Infinite, 1000); t4 = new System.Threading.Timer(new TimerCallback(T4), null, Timeout.Infinite, 1000); }
3.因?yàn)橐獙?shí)現(xiàn)定時(shí)時(shí)間的不同,所以要定義不同的整型變量時(shí)、分、秒:
//一號(hào)機(jī) int hour = 0; int minute = 0; int second = 0; //二號(hào)機(jī) int hour2 = 0; int minute2 = 0; int second2 = 0; //三號(hào)機(jī) int hour3 = 0; int minute3 = 0; int second3 = 0; //四號(hào)機(jī) int hour4 = 0; int minute4 = 0; int second4 = 0;
4.時(shí)間執(zhí)行方法并輸出:
private void T4(object state)// 時(shí)間T方法 { try { second4++; if (second4 == 60) { minute4++; second4 = 0; } if (minute4 == 60) { hour4++; minute4 = 0; } this.Invoke(new SetControlValue(S4), second4); this.Invoke(new SetControlValue(S4), minute4); this.Invoke(new SetControlValue(S4), hour4); } catch { } } private void S4(object value) { textBox4.Text = hour4.ToString() + "時(shí)" + minute4.ToString() + "分" + second4.ToString() + "秒"; } private void T2(object state) { try { second2++; if (second2 == 60) { minute2++; second2 = 0; } if (minute2 == 60) { hour2++; minute2 = 0; } this.Invoke(new SetControlValue(S2), second2); this.Invoke(new SetControlValue(S2), minute2); this.Invoke(new SetControlValue(S2), hour2); } catch { } } private void S2(object value) { textBox2.Text = hour2.ToString() + "時(shí)" + minute2.ToString() + "分" + second2.ToString() + "秒"; }
5.定時(shí)器的執(zhí)行和停止,分別用{你定義的.Change(0, 1000)}、{你定義的.Change(0, 1000)}表示,如:
t1.Change(0, 1000); t1.Change(Timeout.Infinite, 1000);
6.效果圖:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
npoi2.0將datatable對(duì)象轉(zhuǎn)換為excel2007示例
這篇文章主要介紹了npoi2.0將datatable對(duì)象轉(zhuǎn)換為excel2007示例的相關(guān)資料2014-04-04C#連接到sql server2008數(shù)據(jù)庫(kù)的實(shí)例代碼
這篇文章主要介紹了C#連接到sql server2008數(shù)據(jù)庫(kù)的實(shí)例代碼,需要的朋友可以參考下2017-09-09解析C#多線程編程中異步多線程的實(shí)現(xiàn)及線程池的使用
這篇文章主要介紹了C#多線程編程中異步多線程的實(shí)現(xiàn)及線程池的使用,同時(shí)對(duì)多線程的一般概念及C#中的線程同步并發(fā)編程作了講解,需要的朋友可以參考下2016-03-03c#實(shí)現(xiàn)服務(wù)器性能監(jiān)控并發(fā)送郵件保存日志
這篇文章主要介紹了c#實(shí)現(xiàn)服務(wù)器性能監(jiān)控并發(fā)送郵件保存日志的示例,代碼分為客戶(hù)端和服務(wù)端,客戶(hù)端可安裝為本地服務(wù)形式啟動(dòng)2014-01-01C# 實(shí)現(xiàn)在控制臺(tái)上換行輸出與不換行輸出
這篇文章主要介紹了C# 實(shí)現(xiàn)在控制臺(tái)上換行輸出與不換行輸出,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04