我用了一个ocx控件,关闭窗体或者关闭程序后,控件仍在进程中运行,并且下次打开窗体就会提示 内存不足,并且自动删除了该控件?
请问,关闭窗体后 如何释放窗体中控件所占用的内存资源

解决方案 »

  1.   

    private sub form1_unload()
       set 窗体名=nothing
    end sub
      

  2.   

    窗体关闭后其实和它对应的对象仍然运行在内存中,只有将这个对象引用(对象名)设为Nothing,这样对会消失,不信你用两个窗体,当你Unload一个窗体后在另外一个窗体里仍然可以访问前一个窗体的属性等信息。
      

  3.   

    WuYunpeng(白日) 完全错误!
    该现象是 VB 将所有的窗体做了类似定义了同名的 As New 变量的处理,如果工程中有 Form1 和 Form2,可以认为 VB 在某个不可见的公共公共模块中声明了
    Public Form1 As New Form1
    Public Form2 As New Form2
    无论对 Form1 指向了 Unload 或 Set Nothing,调用 Form1.Text1 会再次对 Form1 进行 Load。
      

  4.   

    多谢了各位的解答!!!!!可是还是没有起作用我用的控件是 acrobat 7.0 browser contrlo type ,打开pdf文件都正常,保存工程后退出。再次打开时提示 内存溢出,窗体上的控件自动删除了,后来发现关闭vb后进程里acrobat仍在运行。 
    我在窗体unload 事件 里 试过 set form1 = nothing  或者 loadfile ""  或 end 等等都不起作用,到底怎么才能在关闭这个控件那?