2012-10-24 59 views

回答

4

使用Stopwatch。在課堂級創建秒錶的對象並使用它來計算時間。

喜歡的東西:

public partial class Form1 : Form 
    { 
     Stopwatch stopwatch = new Stopwatch(); 

     public Form1() 
     { 
      InitializeComponent(); 
     } 
     private void button1_Click(object sender, EventArgs e) 
     { 
      stopwatch.Start(); 

     } 
     private void button2_Click(object sender, EventArgs e) 
     { 

      stopwatch.Stop(); 
      var milliSeocnds = stopwatch.ElapsedMilliseconds; 
      var timeSpan = stopwatch.Elapsed; 
     } 
    } 
+0

(和一些額外的邏輯,如果按鈕可以按任何順序) – Davy8

+0

@ Davy8,哦是的,我的代碼只是顯示用法的秒錶 – Habib

3

你可以使用兩個全局日期時間變量,在點擊兩次按鈕差異變量;

private DateTime btn1Click ; 
    private DateTime btn2click; 


     private void btn1_Click(object sender, EventArgs e) 
     { 
      btn1Click = DateTime.Now; 
     } 

     private void btn2_Click(object sender, EventArgs e) 
     { 
      btn2click = DateTime.Now; 
     } 

和使用差異這個時間代碼:

TimeSpan timespan = btn2click - btn1Click; 

在同一個按鈕:

private DateTime btnClick1 ; 
     private DateTime btnClick2; 

    private void btn_Click(object sender, EventArgs e) 
     { 
      if (btnClick1==null) 
      { 
       btnClick1 = DateTime.Now; 
      } 
      else 
      { 
       btnClick2 = DateTime.Now; 
      } 
     } 
+1

http://stackoverflow.com/questions/28637/is-datetime-now - 最好的方式來衡量一個功能的性能 – Habib

+0

我想計算相同形式的同一按鈕的兩次點擊之間的持續時間 – Manuj

0

使用的System.Threading您可以使用秒錶功能。只需在第一次點擊時啓動該功能,並在第二次點擊時停止。

Using System.Threading 

//main etc ignored 

//declare 

Stopwatch s = new Stopwatch(); 

//start 
s.start(); 
//stop 
s.stop() 
//get the time 
s.Elapsed; 
相關問題