读书人

关于进度条实时更新的有关问题

发布时间: 2013-07-16 22:38:05 作者: rapoo

关于进度条实时更新的问题
我的程序在执行某个函数操作的时候用时比较长,所以我想加个进度条,将这个函数运行的时间过程同步显示在进度条上,也即是如下面代码所示:我在点击btnRun之后,将CreateNewData这个函数运行的时间动态实时更新显示在ProcessBar1进度条上,请问要如何处理?


private void btnRun_Click(object sender, EventArgs e)
{
CreateNewData(A,B,C);
}

//主要函数,执行时间比较久
private void CreateNewData(ArrayList alImport,int Num,string sCoordinate)
{
......
}

[解决办法]
btn1_Click中开辟线程

Thread th = new Thread((ThreadStart)delegate()
{
while(...) //耗时操作
{
//do something
this.Invoke((Action)delegate() //更新界面
{
progressBar1.Value = ...
});
//do something
}
});
th.Start();

读书人网 >C#

热点推荐