各位大神:
          我的工程里面有一个窗体FORM1在LOAD时,打开了TIMER1。按理说当unload form1之后timer1应该也跟着停止了,但是我在form2的时候发现timer1还是在运行,还是每隔一个interval就执行timer中的事件。后来我将程序修改为:
           Me.Timer1.Enable=False
           Form2.Show
           Unload Me
           可是就算这样子,为什么form2在运行的时候timer1中所运行的事件还是在运行?不知道有没有人也遇到过这样的问题,跪求诸位高手,帮小弟解决这个问题,谢谢!

解决方案 »

  1.   

    你应该在FORM1之外某个地方引用了Timer1了吧?
    不然,你就是某个地方引用了Form1,Form1关闭但没有真正的释放
      

  2.   

    你怎么知道from1的timer1还在运行?
      

  3.   

    我的timer中有弹出一个MSGBOX,所以我知道
      

  4.   

    我也遇到同样的问题:
    在timer1中我写了下面的代码if i>4 then
       i=0
       timer1.enable=false
      msgbox("已完成转换")
    end if结果timer1没有停止,msg也弹出来了,,,
    求帮助
      

  5.   

    一般情况下这种问题是DoEvents引起的
      

  6.   


    额。。你这个即使timer1关闭了 mag也会执行的。。肯定要执行完if里面的语句啊亲,下一次就不执行了。
      

  7.   

    Timer1以他为搜索条件,看你的代码,是否有其他地方在调用。---------------------------------------------------------Timer1,控件最好在label里面的属性中设置为false,在调用的时候设置为true,调用结束,在设置回false。
      

  8.   

    这样:1 设置一个窗体级的变量     Dim blnStop As Boolean2 在你的 Timer 事件代码中加上    If blnStop Then
            Timer1.Enabled = False
            Exit Sub
        End If3 在 Form_Unload 事件中加上一句    blnStop = True
      

  9.   

     我判断这个 I 未设置值(默为0) 故你这儿不是TIMER1在运行,而是判断语句在自行判断....造成MSGBOX运行...
      

  10.   


    你那个timer1.enable=false 是错的啊,应该是 Timer1.Enabled = False   (看清是Enabled)
    你几个地方都写错,肯定停不了啊。
      

  11.   

    楼主用的是.net以后的版本吧,timer控件不继承form1的属性的,是一个public控件,不会因你的form1关闭而停止的,如果要用,应该在timer属性中设置其enable为false,在form调用timer1的地方用timer1.enable=true,在调用结束再timer1.enable=false