using System;
          using System.Collections.Generic;
          using System.ComponentModel;
          using System.Data;
          using System.Drawing;
          using System.Text;
          using System.Windows.Forms;
          using System.Threading;

          namespace WindowsApplication4
          {
              
          public partial class Form1 : Form
              {
                  
          //聲明代理類型
                  delegate void delegateTest(int p);
                  
          //為代理類型創建新的實例
                  private delegateTest test=null;
                  
          //為了不影響界面響應,需要新建一個線程
                  Thread th = null;
                  
          public Form1()
                  {
                      InitializeComponent();
                      
          //為線程初始化
                      th = new Thread(new ThreadStart(run));
                      
          //初始化代理實例
                      test = new delegateTest(testD);
                  }

                  
          private void button1_Click(object sender, EventArgs e)
                  {
                      
          //方法通過調用線程開始
                      th.Start();
                  }
                  
          /// <summary>
                  
          /// 實際進行循環操作的函數
                  
          /// </summary>
                  void run()
                  {
                      
          for (int i = 0; i <= 100; i++)
                      {
                          
          ///每次需要長時間處理的過程
                          Thread.Sleep(100);
                          
          //調用代理的方法
                          this.Invoke(test, i);
                      }
                  }
                  
          /// <summary>
                  
          /// 處理界面元素顯示進度
                  
          /// </summary>
                  
          /// <param name="p"></param>
                  void testD(int p)
                  {
                      
          //處理界面元素顯示進度
                      progressBar1.Value = p;
                      label1.Text 
          = p+"%";
                  }

                  
          private void stop_Click(object sender, EventArgs e)
                  {
                      th.Abort();
                      
          this.Invoke(test, 0);
                  }
              }
          }
          posted on 2010-08-04 09:23 Ying-er 閱讀(312) 評論(0)  編輯  收藏 所屬分類: .Net
          主站蜘蛛池模板: 故城县| 区。| 通州区| 顺平县| 南靖县| 和硕县| 清水河县| 萝北县| 正镶白旗| 平阴县| 池州市| 永定县| 临江市| 延安市| 盱眙县| 武威市| 廉江市| 凤庆县| 清水河县| 沙坪坝区| 娄烦县| 高青县| 南雄市| 德阳市| 临沧市| 台北县| 房产| 阿鲁科尔沁旗| 贞丰县| 武山县| 邢台县| 承德县| 阿荣旗| 顺平县| 岫岩| 南川市| 临海市| 甘孜| 宜丰县| 手游| 十堰市|