我是靠谱客的博主 重要柠檬,这篇文章主要介绍C#实现多个计时器记录不同定时时间,现在分享给大家,希望可以做个参考。

本文实例为大家分享了C#实现多个计时器记录不同定时时间的具体代码,供大家参考,具体内容如下

1.定义Timer类、定义委托

复制代码
1
2
3
4
//定义Timer类 System.Threading.Timer t3,t1,t2,t4; //定义委托 public delegate void SetControlValue(object value);

2.初始化

复制代码
1
2
3
4
5
6
7
8
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.因为要实现定时时间的不同,所以要定义不同的整型变量时、分、秒:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//一号机 int hour = 0; int minute = 0; int second = 0; //二号机 int hour2 = 0; int minute2 = 0; int second2 = 0; //三号机 int hour3 = 0; int minute3 = 0; int second3 = 0; //四号机 int hour4 = 0; int minute4 = 0; int second4 = 0;

4.时间执行方法并输出:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
private void T4(object state)// 时间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() + "时" + 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() + "时" + minute2.ToString() + "分" + second2.ToString() + "秒"; }

5.定时器的执行和停止,分别用{你定义的.Change(0, 1000)}、{你定义的.Change(0, 1000)}表示,如:

复制代码
1
2
t1.Change(0, 1000); t1.Change(Timeout.Infinite, 1000);

6.效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持靠谱客。

最后

以上就是重要柠檬最近收集整理的关于C#实现多个计时器记录不同定时时间的全部内容,更多相关C#实现多个计时器记录不同定时时间内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(123)

评论列表共有 0 条评论

立即
投稿
返回
顶部