C# 进度条二步搞定

一.新建窗体类 progressBar_windows1.cs,窗体增加progressBar 和label1。progressBar_windows1.cs内容如下
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Test.CentreWin
{
public partial class progressBar_windows1 : Form
{
public progressBar_windows1(int _Minimum, int _Maximum)//带参数,表示进度条的范围的最小值和最大值
{
InitializeComponent();
progressBar1.Maximum = _Maximum;//设置范围最大值
progressBar1.Value = progressBar1.Minimum = _Minimum;//设置范围最小值
}
public void setPos(int value)//设置进度条当前进度值
{
if (value <= progressBar1.Maximum)//如果值有效
{
progressBar1.Value = value;//设置进度值
label1.Text = (value * 100 / progressBar1.Maximum).ToString() + “%”;//显示百分比
}
Application.DoEvents();//重点,必须加上,否则父子窗体都假死
}
private void progressBar_windows1_Load(object sender, EventArgs e)
{
this.Owner.Enabled = false;//设置父窗体不可用
}
private void progressBar_windows1_FormClosed(object sender, FormClosedEventArgs e)
{
this.Owner.Enabled = true;//回复父窗体为可用
}

    private void progressBar_windows_Shown(object sender, EventArgs e)
    {

    }


}

}

二.测试进度条

   Int32  Coun = 100;
    Int32 progressBar_Cnt2 = 0;
    Int32 progressBar_all2 = 0;
    progressBar_windows1 form2;// 显示进度条窗体

     progressBar_Cnt2 = 0;
    progressBar_all2 = 0;
    progressBar_all2 = Coun ;
    if (progressBar_all2 > 0)
    {

        form2 = new progressBar_windows1(0, progressBar_all2);
        form2.Show(this);//设置父窗体
        for(int i=0;i<Coun;i++)
        {
        		/
        		//这里增加用户处理的内容
        		/
        		progressBar2_updata()
	   }


    }


    public void progressBar2_updata()
    {
        if (progressBar_all2 > 0)
        {
            progressBar_Cnt2++;
            form2.setPos(progressBar_Cnt2);//设置进度条位置
            if (progressBar_Cnt2 >= progressBar_all2)
            {
                form2.Close();
            }
        }
    }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZCY5202015

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值