本帖最后由 caterpillar12345 于 2010-10-13 10:30:07 编辑

解决方案 »

  1.   

    while (stationNum1 < stationSum1)
    {
      Random rd = new Random();  time1 = rd.Next(5, 10);  timer1.Enabled = true;  this.timer1.Interval = 1000;
       
      timer1.Start();  bt1_Click(bt1, e);
    }
    你这个函数里面 哪里有调用方法?
      

  2.   

    呵呵,你没有调用timer1_Tick方法??。
      

  3.   

    不知道 你是哪个Timer 估计 每次Start() 因为是同一个对象 所以 每次都重新执行Start() 所以没有执行成功。
      

  4.   


            private void Form1_Load(object sender, EventArgs e)
            {
                    this.timer1.Interval = 1000;                timer1.Start();
            }        private void timer1_Tick(object sender, EventArgs e)
            {
                if (time1 > 0)
                {
                    time1--;
                    label1.Text = time1.ToString();
                }
                else
                {
                    timer1.Stop();
                }  
            }
    这段也是没有调用timer1_Tick方法,为什么就可以用?
      

  5.   

    timer1_Tick(object sender, EventArgs e)
    是系统定义的函数,不是自己写的方法。
    如果你触发了这个事件,该函数就会执行。
      

  6.   

     timer1.Elapsed += new ElapsedEventHandler(timer1_Tick);
      

  7.   

    恍然大悟。
    调用是确实调用了,只不过自己没看出来,这段代码就有问题,和自己的本意不符敢问,如何才能让timer stop的时候再执行bt1_Click()呢???