关于winform倒计时问题

图片说明
textbox输入秒数,添加timer,点击开始进行倒计时。
怎么实现啊

3个回答

放一个定时器
inerval设置为1000
enabled设置为true

定时器tick代码
textBox1.Text = (int.Parse(textBox1.Text) - 1).ToString();

caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复DTSLK: 那就把textBox1换成label1
接近 2 年之前 回复
DTSLK
DTSLK 要是让label1不允许为副数要怎么写啊?
接近 2 年之前 回复
DTSLK
DTSLK 回复caozhy: 要是让label
接近 2 年之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复DTSLK: if ((int.Parse(textBox1.Text) <= 0) textBox1.Text = "0";
接近 2 年之前 回复
DTSLK
DTSLK 回复caozhy: 还是不行
接近 2 年之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 加上 if ((int.Parse(textBox1.Text) < 0) textBox1.Text = "0";
接近 2 年之前 回复
DTSLK
DTSLK 到零后会继续向副数倒计时,如何控制到零就停止计时啊?
接近 2 年之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复DTSLK: 就是字符串
接近 2 年之前 回复
DTSLK
DTSLK 回复caozhy: 数字0呢?不是字符串
接近 2 年之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复DTSLK: textBox1.Text = "0";
接近 2 年之前 回复
DTSLK
DTSLK 回复caozhy: 再请教下,如果添加个清零按钮,如何实现点击后label,textbox变为零
接近 2 年之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复DTSLK: 如果问题解决,麻烦点下回答右边的采纳,谢谢
接近 2 年之前 回复
DTSLK
DTSLK 谢谢
接近 2 年之前 回复

下面这个方法也可以用
for(int i=20;i>=0;i--){
textBox1.Text = i.ToString();
Thread.Sleep(1000);
}

private void timer1_Tick(object sender, EventArgs e)
{

        label1.Text = (int.Parse(label1.Text) - 1).ToString();
        if ((int.Parse(label1.Text) <= 0))
        {
            timer1.Stop();
            button1.Text = "开始";
            button2.Enabled = true;
            MessageBox.Show("倒计时完毕!");
        }
    }

    private void button1_Click(object sender, EventArgs e)
    {
        if (timer1.Enabled)
        {
            timer1.Stop();
            button1.Text = "开始";
            button2.Enabled = true;
        }
        else
        {
            timer1.Start();
            button1.Text = "停止";
            button2.Enabled = false;
        }
    }

    private void button2_Click(object sender, EventArgs e)
    {
        textBox1.Text="0";
    }
DTSLK
DTSLK @caozhy
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!