2011-08-31 37 views

回答

12

下面是如何与一个进度条使用Timer控制的例子。首先,创建一个新的Timer和一个ProgressBar。然后,启动时加载的形式时,使用此功能:

timer1.Enabled = true; // Enable the timer. 
timer1.Start();//Strart it 
timer1.Interval = 1000; // The time per tick. 

然后,对于蜱创建活动,如下所示:

timer1.Tick += new EventHandler(timer1_Tick); 

创建活动的功能:

void timer1_Tick(object sender, EventArgs e) 
{ 
    throw new NotImplementedException(); 
} 

之后,将代码添加到为进度条增加值的勾号函数中,类似于:

progressBar1.Value++; 

不要忘了进度条,您可以通过将此代码添加到form_load功能做设置的最大值:

progressBar1.Maximum = 10; // 10 is an arbitrary maximum value for the progress bar. 

另外,不要忘记检查最大值,所以你的计时器将停止。您可以使用此代码停止计时:

timer1.Stop(); 

全码:

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

    private void Form1_Load(object sender, EventArgs e) 
    { 
     timer1.Enabled = true; 
     timer1.Start(); 
     timer1.Interval = 1000; 
     progressBar1.Maximum = 10; 
     timer1.Tick += new EventHandler(timer1_Tick); 
    } 

    void timer1_Tick(object sender, EventArgs e) 
    { 
     if (progressBar1.Value != 10) 
     { 
      progressBar1.Value++; 
     } 
     else 
     { 
      timer1.Stop(); 
     } 
    } 
} 
+1

使用System.Windows.Forms.Timer代替System.Timers.Timer。 System.Timers.Timer无法识别timer1.Tick。希望这可以帮助某人。 – NPE