【发布时间】:2021-08-13 18:12:52
【问题描述】:
我需要一些帮助来制作一个倒计时计时器,该计时器也会增加 ProgressBar。
我有一个按钮,它生成一个随机时间(以分钟表示),它将增加一个 ProgressBar,用作 loader 的一种形式。
当 ProgressBar 增加其值时,我想在标签中显示剩余时间。
这是我的代码:
int RandomNumber;
int MinutesElapsed;
private void button1_Click(object sender, EventArgs e)
{
Random random = new Random((int)DateTime.Now.Ticks);
RandomNumber = random.Next(1, 121); // at (x, x) there is a limit from x to x+1
MinutesElapsed = 0;
QuestTimer1.Start(); // starts the timer
}
private void QuestTimer1_Tick(object sender, EventArgs e)
{
MinutesElapsed++;
double minutes = MinutesElapsed / 1.2;
progressBar1.Value = (int)minutes;
}
【问题讨论】:
-
仅供参考 - 不要在每次单击按钮时初始化
new Random()。使用static readonly Random = new Random();字段并将其用作随机数生成器。 -
那么,问题出在哪里?只需添加一个文本框并使用剩余时间进行更新?
-
@JonasH 这是我不知道怎么写的问题:D
-
那么,你做了哪些研究?您尝试了哪些解决方案? Stackoverflow 不是免费的代码编写服务,预计比“我想做 X 请教我怎么做”付出更多的努力。
-
@JonasH 我试图研究相同的“剩余时间”计数器,但我遇到了一个实际上带有我拥有的标签的代码,我只需要重新制作代码以使其工作。所以我加入并粘贴它并进行了一些细微的更改,从 8 个错误下降到 3 个。所以我联系了我的朋友来帮助我,我向他们展示了代码和我的尝试。他们说是的,不应该还有更多。我向他们发送了我从中获得它的网站。现在我试着自己做,并想出了一个解决方案。我会在运行程序时更新问题并分享错误:)
标签: c# .net winforms timer progress-bar