BackgroundWorker+ProgressBar+委托 实现多线程、进度条

本文介绍如何使用 C# 中的 BackgroundWorker 控件来更新 WinForms 应用程序中的进度条显示,包括创建带有进度条的窗体、实例化窗体、设置初始状态以及在后台工作线程中更新进度条。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      上文在C# 使用BackgroundWorker实现WinForm异步》介绍了如何通过BackgroundWorker实现winForm异步通信,下面介绍如何通过BackgroundWorker实现进度条显示。实现效果图如下所示:

 

     要实现此功能,首先需要创建一个带有进度条的窗体,取名为:frmProcess,窗体中添加processBar和一个Label进行,设置这两个控件的Modifiers值为public。接下来在上文的代码基础上进行操作。

(1) 定义全局窗体变量

      接着上文中的代码,在窗体Form1下定义变量:

1 frmProcess myProcess;

(2)Start按钮单击事件下对frmProcess窗体进行实例化。

1             myProcess = new frmProcess();
2             myProcess.StartPosition = FormStartPosition.CenterScreen;
3             myProcess.pbProcess.Value = 0;
4             myProcess.lblProcesstext.Text = "0%";
5             myProcess.Show();
6             myProcess.TopMost = true;

(3)backgroundWorker1_ProgressChanged事件下传入当前进度

1             myProcess.pbProcess.Value = e.ProgressPercentage;
2             myProcess.lblProcesstext.Text = e.ProgressPercentage + "%";

通过以上功能操作,就完成了进度条的显示。

源代码下载地址:http://files.cnblogs.com/Peter-Luo/Multi_ThreadingV2.zip

转载于:https://www.cnblogs.com/Peter-Luo/p/3435711.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值