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

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

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

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

(1) 定义全局窗体变量

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

 frmProcess myProcess;

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

             myProcess = new frmProcess();
myProcess.StartPosition = FormStartPosition.CenterScreen;
myProcess.pbProcess.Value = ;
myProcess.lblProcesstext.Text = "0%";
myProcess.Show();
myProcess.TopMost = true;

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

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

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

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

上一篇:1. Python3 环境搭建


下一篇:windows 自带的 端口映射 端口转向功能