小绵羊 发表于 2016-10-17 16:38:32

Timer控件

大家好,我想问下关于Timer控件的用法。在form上我想通过textbook控件输入一个任意整型值(比如数字10),然后点击开始按钮,效果就是在label1上显示“倒计时还有i(i=10,9,8....)秒”,问题如何将textbook值传给以下time(time=10是可以实现倒计时10秒的功能)?在线等,谢谢喽:P

       int time = 10;
      private void timer1_Tick(object sender, EventArgs e)
      {

            if (time >0)
            {
                time--;

                label1.Text = string.Format("还有{0}秒关机!", time.ToString());
            }
            int a = time;
            if(time<=0)
            {
                timer1.Stop();
                MessageBox.Show("时间到");
            }
      }

      private void btn_Start_Click(object sender, EventArgs e)
      {
            timer1.Start();
      }

剑弑 发表于 2016-10-18 09:02:30

随便写了个,你自己改改吧

小绵羊 发表于 2016-10-18 12:44:04

剑弑 发表于 2016-10-18 09:02
随便写了个,你自己改改吧

你这一句“label2.Text=Convert.ToString(i)”是不是转化错了啊,应该是label2.Text=i.ToString()吧!!!
可是我想用Textbook传入的值给 i:o

ibcadmin 发表于 2016-10-18 16:58:44

int time = 10;这个声明textbox有textchange事件在事件里 改变time的值 time = this.textbox1.text

小绵羊 发表于 2016-10-18 17:12:55

ibcadmin 发表于 2016-10-18 16:58
int time = 10;这个声明textbox有textchange事件在事件里 改变time的值 time = this.textbox1.text

大神,那如何将textbook事件中的time值赋给time_tick事件中的time啊,在线等回复哦

小绵羊 发表于 2016-10-18 17:30:14

ibcadmin 发表于 2016-10-18 16:58
int time = 10;这个声明textbox有textchange事件在事件里 改变time的值 time = this.textbox1.text

谢谢大神,解决了哦:P

剑弑 发表于 2016-10-19 11:29:21

小绵羊 发表于 2016-10-18 12:44
你这一句“label2.Text=Convert.ToString(i)”是不是转化错了啊,应该是label2.Text=i.ToString()吧! ...

没有转化错,convert.Tostring(i)跟i.tostring()是一样的;一样啊,把i换成textbox的文本就OK

小绵羊 发表于 2016-10-20 21:05:07

剑弑 发表于 2016-10-19 11:29
没有转化错,convert.Tostring(i)跟i.tostring()是一样的;一样啊,把i换成textbox的文本就OK

哦哦,了解了谢谢哈

serena 发表于 2017-9-18 14:08:27

小绵羊 发表于 2016-10-18 12:44
你这一句“label2.Text=Convert.ToString(i)”是不是转化错了啊,应该是label2.Text=i.ToString()吧! ...

private int timeOfCurrent;
      private void btnTimeOut_Click(object sender, EventArgs e)
      {
            if (txtBox.Text != null && int.Parse(txtBox.Text) > 0)
            {
                timeOfCurrent = int.Parse(txtBox.Text);
                this.timerTimeOut.Enabled = true;
                timerTimeOut.Start();
            }
            else {
                timerTimeOut.Stop();
            }
      }

      private void timerTimeOut_Tick(object sender, EventArgs e)
      {
            timeOfCurrent--;
            lblShowTime.Text = "当前的倒计时数字为:" + timeOfCurrent.ToString();
            if(timeOfCurrent == 0){
                timerTimeOut.Stop();
                MessageBox.Show("时间到!");
            }
      }
页: [1]
查看完整版本: Timer控件