我有个思路,在一个循环语句中,循环调用路径,对路径下文件进行加密处理,同时在label下显示正在调用的路径.
大致代码如下:
for(int i=0;i<path.length;i++)
{label.Text=path[i];
jiami(path[i];);
}
path为路径的一个集合,jiami(string path)为以一个路径为参数的加密函数,label为显示路径的标签.
运行该语句时,label.Text不会随i更新,只是到i为最后值即path.length-1时才更新,或者说所有加密处理完才显示,另外我还打算另一个label显示一个路径的加密%进度,也是不能显示,加密完才显示100%.请问,我该如何解决此问题?

解决方案 »

  1.   

    没时间帮你找了,循环中要用类似delphi的appliction.processmessage或者vb的doevents类似的语句,
      

  2.   

    for(int i=0;i <path.length;i++) 
    {label.Text=path[i]; 
    jiami(path[i];); 
    Application.DoEvents();

    结帖率:0.00%
    做人要厚到!
      

  3.   

    for (int i = 0;i < path.length; i++) 
    {
      label.Text = path[i];
      label.Refresh(); 
      jiami(path[i];); 
      

  4.   

    不是不更新 是循环的速度太快  你根本看不出来 
    你调试的时候就知道其实label.Text这个字是在变化的
      

  5.   

    用多线程就可以了…… 
    做个线程,做个委托,获得相应的信息显示在label.text上,然后进度条也可以同样实现…… 
    不想用线程的话用timer更容易……