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;
          using System;
          using System.Threading;
          namespace DataImportFromAccess
          {

           

              //聲明一個回調函數:注意傳遞的參數要與Example類中的函數參數類型一致
              public delegate void ExampleCallback(int lineCount, Label lb);
              public partial class Form1 : Form
              {
                  public Form1()
                  {
                      InitializeComponent();
                  }

                  public void CurrentNumber(int tempCurrent,Label lb)
                  {
                      lb.Text = tempCurrent.ToString();
                  }
                  private void button1_Click(object sender, EventArgs e)
                  {
                      ThreadWithData twd = new ThreadWithData(1, 100,this.label1,new ExampleCallback(CurrentNumber));
                      Thread td = new Thread(new ThreadStart(twd.RunMethod));
                      td.Start();
                  }   
                  private void button2_Click(object sender, EventArgs e)
                  {
                      ThreadWithData twd = new ThreadWithData(2, 200,this.label2, new ExampleCallback(CurrentNumber));
                      Thread td = new Thread(new ThreadStart(twd.RunMethod));
                      td.Start();
                  }
              }
              public class ThreadWithData
              {
                  private int start = 0;
                  private int end = 0;
                  private ExampleCallback callBack;
                  private Label lb;

                  public ThreadWithData(int start,int end,Label lb,ExampleCallback callBack)
                  {
                      this.start = start;
                      this.end = end;
                      this.callBack=callBack;
                      this.lb = lb;
                  }
                  public void RunMethod()
                  {
                      for(int i=start;i<end;i++)
                      {
                          Thread.Sleep(1000);
                          if (callBack != null)
                              callBack(i,lb);
                      }
                   
                  }
              }
          }

          posted on 2009-03-04 09:41 sanmao 閱讀(80) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           

          常用鏈接

          留言簿(5)

          隨筆分類

          隨筆檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 罗源县| 普格县| 商洛市| 綦江县| 龙门县| 东港市| 马边| 沈丘县| 廉江市| 花莲县| 教育| 张家口市| 龙江县| 阜新市| 四子王旗| 新余市| 周宁县| 沙河市| 西畴县| 中山市| 新野县| 大名县| 南丰县| 霍林郭勒市| 苏尼特左旗| 安岳县| 克山县| 浦北县| 石泉县| 长春市| 望城县| 马边| 沈阳市| 西林县| 永德县| 甘肃省| 措勤县| 大城县| 镶黄旗| 满城县| 普陀区|