如何在Windows窗体应用程序中跟踪C#中两次按钮单击之间的时间?

时间:2012-10-24 12:04:44

标签: c# windows winforms

我在c#中创建了一个windows表单应用程序,其中输入了用户的输入。我想计算用户在两次提交之间花费的时间。我该怎么办?

3 个答案:

答案 0 :(得分: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;
        }
    }

答案 1 :(得分:3)

您可以使用两个全局DateTime变量,然后单击两次按钮diff变量;

   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;
            }
        }

答案 2 :(得分: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;