如何用c#制作秒表

本文关键字:何用 | 更新日期: 2023-09-27 18:07:23

我只是想问一下,如果我可以用c#做一个秒表,我试过了:

        private void button2_Click(object sender, EventArgs e)
    {
        timer1.Start();
    }
    private void timer1_Tick(object sender, EventArgs e)
    {
        int st = 00;
        int m = 00;
        string stime = "00:00";
        if(st == 60)
        {
            m++;
            st = 00;
        }
        else
        {
            st++;
        }
        if (m == 60)
        {
            m = 00;
        }
        if(st < 10)
        {
            st = 0 + st;
        }
        if(m < 10)
        {
            m = 0 + m;
        }
        stime = m.ToString() + ":" + st.ToString();
        label3.Text = stime;
    }

这个,但它没有工作。我的定时器设置好了,定时器的间隔是1000ms。有人能帮帮我吗?

如何用c#制作秒表

在我看来,你更有可能制造手表而不是秒表?

如果你正在制作一个秒表,我认为你需要在你的类中有一个字段/属性来保存开始时间:

private DateTime _start;
private void button2_Click(object sender, EventArgs e)
{
    _start = DateTime.Now;
    timer1.Start();
}

然后在timer1_Tick中你可以这样写:

private void timer1_Tick(object sender, EventArgs e)
{
    TimeSpan duration = DateTime.Now - _start;
    label3.Text = duration.ToString(<some format string>);
}

似乎你当前的代码在timer1_Tick只有局部变量,因此总是会产生相同的时间?: -)