gpt4 book ai didi

winforms - Winforms傻瓜计时器

转载 作者:行者123 更新时间:2023-12-03 14:48:33 25 4
gpt4 key购买 nike

我试图让一个计时器在winform中每秒滴答一次,当我寻求有关如何执行此操作的建议时,我发现了有关线程的大量内容。好吧,我不在乎线程,因为我要做的就是在一分钟内将值从60倒数到0,然后停止。我认为我们不需要进入云计算来解决这个问题,但是我确实是一个Web表单之手,所以我对此问题有些不满。谁能给我指出一个例子

这是我尝试过的

private void button1_Click(object sender, EventArgs e)
{
this.timeLeft = 60;
this.label1.Visible = false;
this.button1.Visible = false;
gt = new Timer();
gt.Tick += new EventHandler(CountDown);
gt.Interval = 1000;
gt.Start();
}

private void CountDown(object sender, EventArgs e)
{
do
{
this.TimeBar.Value = timeLeft;
this.timeLeft -= 1;
} while (this.timeLeft > 0);
if (this.TimeBar.Value > 0) return;
gt.Stop();
this.label1.Visible = true;
this.button1.Visible = true;
}


任何帮助,将不胜感激。

最佳答案

发生的是,您正在递减timeLeft变量,直到它在计时器的第一滴答达到零为止。取出do...while循环,您将获得一个基本的工作示例。

但是,如果您要进行任何数量的Windows窗体工作,则需要了解线程及其对UI的影响。如果您没有关于无用异常和行为不当的UI故事的话,您将很快回到这里。乔恩·斯基特(Jon Skeet)具有出色的threading series。我强烈推荐它。它有一个专门介绍计时器的部分,因此可以为您提供更多的见解。

关于winforms - Winforms傻瓜计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1174733/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com