不用代理实现弹出进度条窗体
彈出進度條的窗體名稱:ProcessBar
主窗體:Form1
實現的功能:Form1要執行大工作量的操作,需要彈出一個窗體顯示進度條
實現方法:
ProcessBar窗體:
在ProcessBar窗體中設置FormBorderStyle為None ,StartPosition為CenterScreen
在窗體中央放一個progressBar1控件
設置progressBar1控件的Maximun=20,step=1??
在progressBar1控件的上面放label控件(顯示百分比)
將progressBar1控件和label控件的聲明訪問類型改為public
?
改完代碼如下:
??public System.Windows.Forms.ProgressBar progressBar1;
??public System.Windows.Forms.Label label1;
Form1窗體:
在要觸發大工作量事件的地方這樣寫:
//按鈕:執行大工作量字符串連接
????private void button5_Click(object sender, System.EventArgs e)
??{
???ProcessBar pj=new ProcessBar();
???pj.Show();
??//開始處理大量耗時工作
???string sor="";
???for(int i=0;i<20000;i++)
???{
????sor+=i.ToString();
????if(i%1000==0)
????{
?????if(pj.progressBar1.Value==20)
??????pj.progressBar1.Value=0;
?????pj.progressBar1.Value++;
?????pj.label1.Text="已完成:"+string.Format("{0:p}",(double)pj.progressBar1.Value/20);
?????//pj.label1.Text="已完成:"+pj.progressBar1.Value+"/20";
?????Application.DoEvents();
????}
???}
??//工作完成,關閉進度條窗體
???pj.Close();
??}
轉載于:https://www.cnblogs.com/tuyile006/archive/2007/02/12/647949.html
總結
以上是生活随笔為你收集整理的不用代理实现弹出进度条窗体的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 挣脱浏览器的束缚(7) - CrossS
- 下一篇: DataGrid分页使用小结