提问者:小点点

如何制作一个简单的倒计时计时器


我需要从一个表示毫秒的数字递减什么来制作一个精确的倒计时计时器?

我有一个程序,你输入分钟(例如30分钟),它转换成毫秒。

计时器每运行一毫秒,就会从该值上移除1。

但倒计时不正确。

我想做的就是用hh:mm:ss:ff做一个简单的倒计时计时器,但是很显然,它需要理解量子物理是如何工作的,以便对它进行编码。

将分钟转换为毫秒:

Q = FCC_Console.setupDuration * 60000;

将毫秒转换为格式并递减它:

t = TimeSpan.FromMilliseconds(Q);
timerValue.Text = string.Format("{0:D2}:{1:D2}:{2:D2}:{3:D2}", t.Hours, t.Minutes, t.Seconds, t.Milliseconds);
Q -= 1;

它把每一个滴答声带走1毫秒,每1毫秒,但每一秒就像10秒左右。

我做错了什么?


共1个答案

匿名用户

你想要一个简单的倒数计时器吗? 是吗?!

所以系好安全带! 准备好了?!

DateTime startPoint = DateTime.Now;
int durationMinutes = 3;
int durationSeconds = 0;
TimeSpan duration = new TimeSpan(0, 0, durationMinutes, durationSeconds);

var Timer = new Stopwatch();
Timer.Start();
TimeSpan remainingTime = startPoint.Add(duration).Subtract(startPoint.Add(Timer.Elapsed));

while (remainingTime != new TimeSpan(0, 0, 0, 0))
{
    remainingTime = startPoint.Add(duration).Subtract(startPoint.Add(Timer.Elapsed));
    Console.WriteLine(remainingTime);
}