我有以下代码:
public async void startCountdown()
{
do
{
label9.Text = frsL.ToString();
frsL -= frsLStep;
g = tabPage1.CreateGraphics();
g.DrawLine(pen1, 5, 7, (int)frsL + 5, 7);
await Task.Delay(1000);
} while (timeToSeconds());
}
我试图每秒刷新一个进度线,但线条没有变化。我使用label9只是为了检查frsL
值是否正在变化而且是,但是该行不会被重新绘制并且它保持在它的起始长度。
答案 0 :(得分:0)
是的,问题是线路正在减少,我必须在绘制新线路之前删除旧线路。 插入'g.Clear(Color.White);'在'g.DrawLine'修复问题之前。 不好的是,有时整条线闪烁。
答案 1 :(得分:-1)
嗨,我建议您在表单中放置一个计时器,将其间隔设置为 1000 并将您的代码粘贴到它的 tick 函数中。
祝你好运!