我怎么能清空我的进度条后,它已满

本文关键字:怎么能 清空 我的 | 更新日期: 2023-09-27 18:15:35

我怎么能把我的progressBar值设置为0,如果它是完整的,当我点击按钮加载如此之快,我看不到任何

我的代码是

 private void button1_Click(object sender, EventArgs e)
    {
        int i;
        progressBar1.Minimum = 0;
        progressBar1.Maximum = 100;
        for (i = 0; i <= 100; i++)
        {
            progressBar1.Value = i;
            if (progressBar1.Value == 100)
            {
              progressBar1.Value = 0;                    
            }
            Refresh();
        }
    }

我怎么能清空我的进度条后,它已满

你是这个意思吗?

private async void button1_Click(object sender, EventArgs e)
    {

        int i;
        progressBar1.Minimum = 0;
        progressBar1.Maximum = 100;
        for (i = 0; i <= 100; i++)
        {
            progressBar1.Value = i;
        }
        await Task.Delay(2000);
        if (progressBar1.Value == 100)
        {
            progressBar1.Value = 0;
        }
    }
    编辑这将等待2秒,直到它设置为空,所以你可以看到,进度条增加到100。

您的代码完全符合您的要求。你可能应该添加一个睡眠来看到一些东西。

    private void button1_Click(object sender, EventArgs e)
        {
            if(IWantToClearTheProgressbarBeforeWork == true)
                progressBar1.Value = 0;
            int i;
            progressBar1.Minimum = 0;
            progressBar1.Maximum = 100;
            for (i = 0; i <= 100; i++)
            {
                progressBar1.Value = i;
                Thread.Sleep(100);    // only for testing. Blocks your thread.
            }
            if(IWantToClearTheProgressbarImediatelyAfterWorkIsDone == true)
                progressBar1.Value = 0;
        }