0

我在 C# 中创建了一个 Windows 窗体应用程序,其中接受了用户的输入。我想计算用户在两次提交之间花费的时间。我该怎么做?

4

3 回答 3

4

使用秒表。在类级别创建秒表对象并使用它来计算时间。

就像是:

 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;
        }
    }
于 2012-10-24T12:05:55.657 回答
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;
            }
        }
于 2012-10-24T12:07:46.537 回答
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;
于 2012-10-24T12:11:15.830 回答