sxl_88 2015-02-07 11:36 采纳率: 50%
浏览 4271
已采纳

C# Winfrom项目,如何在from窗体中控制两个timer控件时间的同步显示

在C# Winfrom项目中,一个from窗体,两个timer控件(timer1和timer2),两个Label控件(labe1和label2),
timer1是实现0到1分钟的倒计时显示在显示labe1中,timer2是实现到1分钟后自动显示当前时间到label2中.

两个button控件(button1和button2)。button1和button2分别控制timer1的开始和暂停。
timer1.Interval =1000(1秒钟). timer2.Interval = 60000(一分钟)

点击button2先暂停timer1的倒计时显示,后再点击button1开始timer1继续显示倒计时。但是发现timer1和timer2控件显示的频率不一样。
timer1跑得比timer2来的快,代码如下,请问如何处理,谢谢。

开始按钮
button1_click:
timer1.Enabled = true;

timer2.Enabled = true;

暂停按钮
button2_click:
timer1.Enabled = false;

timer2.Enabled = false;

显示倒计时:
timer1_Tick:
TimeSpan ts = new TimeSpan(0, 1, 0); //一分钟
String str = ts.Hours.ToString() + ":" + ts.Minutes.ToString() + ":" + ts.Seconds.ToString();
label1.Text = "控制窗体:" + str + ":" + ts.Minutes.ToString();

ts = ts.Subtract(new TimeSpan(0, 0, 1));//每隔一秒减去一秒

显示当前时间:
timer2_Tick:
DateTime dt = DateTime.Now;
string tmpTime = string.Format("{0:F}", dt);
label2.Text = tmpTime;

  • 写回答

1条回答

  • devmiao 2015-02-07 13:33
    关注

    就你的需求来说,用一个timer是再好不过的了。你可以通过一个bool变量决定做什么,而用不着两个timer。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献