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。

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

报告相同问题?

悬赏问题

  • ¥20 电脑鼠标键盘不好使了
  • ¥15 求糕手!用matlab求解目标规划模型🙏
  • ¥15 画出的分类图不对,求解答一下
  • ¥20 springboot和springcloud版本问题
  • ¥15 ps2手柄控制树莓派小车
  • ¥30 C#:vsto powerpoint的外接程序
  • ¥30 stata将do文件代码转化为ado文件
  • ¥15 两个同维数组相比,不同位置、出现重复比无意义,而不同位置、不出现重复比,则有意义。把有意义的两个数组放入新的集合MK中。
  • ¥15 可以远程电脑安装nvm
  • ¥15 写一个可直接调用的函数,将32位有符号数转成另一个无符号的数