【发布时间】:2012-07-10 22:28:24
【问题描述】:
我正在尝试让计时器计时 80 分钟,而进度条会跟踪当前时间,但 C# Forms 中的进度条不会精确到计时器计时。我将它设置为计时器每 1000 毫秒滴答一次,在该滴答声中,它将向进度条添加一个步骤。进度条不会像计时器一样正常工作,有谁知道如何解决这个问题?
public Form1()
{
InitializeComponent();
initTimers();
}
public void timer1_Tick(object sender, EventArgs e)
{
progressBar1.Increment(1);
}
private void button1_Click(object sender, EventArgs e)
{
if (button1.Text == "Go")
{
timer1.Start();
button1.Text = "Stop";
}
else
{
timer1.Stop();
button1.Text = "Go";
}
}
public void initTimers()
{
timer1.Tick += new EventHandler(timer1_Tick);
timer1.Interval = 1000;
}
public void progressTimers()
{
progressBar1.Value = 0;
progressBar1.Minimum = 0;
progressBar1.Maximum = 2;
progressBar1.Step = 1;
progressBar1.Visible = true;
}
【问题讨论】:
-
您能否提供一些代码来帮助更好地诊断问题。
-
"每 1000 毫秒打勾一次" 说每秒一次不是更简单吗?另外:80 * 60 = 4800。你还有 4800 像素可以玩吗?
-
您能否在问题中内联发布,工作防火墙不让我们看到粘贴箱。
-
进度条不能和计时器一起工作吗?怎么了?在您的代码中,进度条的最大值为 2;到底是为了什么?你知道什么是最大值吗?事实上,你甚至不调用函数 progressTimers(),但我假设你想在函数 Form1() 中调用它。
-
基本上是您需要的确切代码。 stackoverflow.com/questions/7259511/…
标签: c# forms timer progress-bar