主页 > 编程资料 > C# >
发布时间:2015-07-12 作者:网络 阅读:194次

第一步:设计界面不说了...注意需要引用 using System.Threading;
第二步:定义一个代理,用于更新ProgressBar的值(Value)

  1.         //更新进度列表
  2.         private delegate void SetPos(int ipos);

第三步:进度条值更新函数(参数必须跟声明的代理参数一样)

  1.         private void SetTextMessage(int ipos)
  2.         {
  3.             if (this.InvokeRequired)
  4.             {
  5.                 SetPos setpos = new SetPos(SetTextMessage);
  6.                 this.Invoke(setpos, new object[] { ipos});
  7.             }
  8.             else
  9.             {
  10.                 this.label1.Text = ipos.ToString() + "/100";
  11.                 this.progressBar1.Value = Convert.ToInt32(ipos);
  12.             }
  13.         }

第四步:函数实现

  1.         private void button1_Click(object sender, EventArgs e)
  2.         {
  3.             Thread fThread = new Thread(new ThreadStart(SleepT));//开辟一个新的线程
  4.             fThread.Start();
  5.         }

第五步:新的线程执行函数:

  1.         private void SleepT()
  2.         {
  3.             for (int i = 0; i < 500; i++)
  4.             {
  5.                 System.Threading.Thread.Sleep(100);//没什么意思,单纯的执行延时
  6.                 SetTextMessage(100 * i / 500);
  7.             }
  8.         }

到此一个简单的进度条程序做好了。简单吧。剩下就靠你自己改造喽。转载请注明一个出处吧。http://blog.csdn.net/gisfarmer谢谢了。

关键字词: