数据模块在关闭时要设DataModule3为null

解决方案 »

  1.   

    如果你用MDICHILD模式则应改为
    procedure TForm1.new1Click(Sender: TObject);
    var
      child: TForm2;
    begin
      Child:= TForm2.Create( application );
    {  try
        Child.Show;
      finally
        Child.free;
      end; }
    end;
    并且主FORM应为MDIFORM
      

  2.   

    将TDataModule3里面的过程全部去掉然后再试一下!
      

  3.   

    Dialog形式的窗口在被关闭是就释放了;
    而MdiChild则只是隐藏,所以出现你所述情况,
    你应该在调用完MdiChild后主动释放Form2
      

  4.   

    在子窗口的onclose中已经有action:= cafree 了呀!
      

  5.   

    你的action:=cafree是注释掉的呀,怎么会起作用呢?
    另外在调用form2的时候,可以将child:=TForm2.Create(Self);试试
      

  6.   

    请问对于子窗口来说,
    create( application ) 和create( self)有什么区别?
      

  7.   

    看一下有关Tform的方法create的说明,你便会明白有什么区别!