首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

亟需 C# WinForm进度条实现方法

2012-08-11 
急需C# WinForm进度条实现方法.通过WinForm实现了一个计算功能,并且要导出数据。需要用进度条progressBar来

急需 C# WinForm进度条实现方法.
通过WinForm实现了一个计算功能,并且要导出数据。需要用进度条progressBar来呈现这个过程。

[解决办法]
大同小异,一般都采用线程。
[解决办法]

C# code
private void CopyWithProgress(string[] filenames){    // Display the ProgressBar control.    pBar1.Visible = true;    // Set Minimum to 1 to represent the first file being copied.    pBar1.Minimum = 1;    // Set Maximum to the total number of files to copy.    pBar1.Maximum = filenames.Length;    // Set the initial value of the ProgressBar.    pBar1.Value = 1;    // Set the Step property to a value of 1 to represent each file being copied.    pBar1.Step = 1;        // Loop through all files to copy.    for (int x = 1; x <= filenames.Length; x++)    {        // Copy the file and increment the ProgressBar if successful.        if(CopyFile(filenames[x-1]) == true)        {            // Perform the increment on the ProgressBar.            pBar1.PerformStep();        }    }}
[解决办法]
两个线程,一个是进度条的,一个是你的时间查询
Thread s2 = new Thread(new ThreadStart(NewMothod));
s2.Start();

Thread s1 = new Thread(new ThreadStart(Search));
s1.Start();
这是实现进度条的方法:
private void NewMothod()
{
for (int i = 1; i <= 10; i++)
{
Thread.Sleep(100);
progressBar.Value = i * 10;
if (autoEvents.WaitOne(10,false))
{
progressBar.Value = 100;
break;
}

}

看看对你有没有帮助!!!


[解决办法]
补充一点,当你的数据导入完成之后可以出发一个事件,表示导入完成,可以通知进度条!!

热点排行