我做完一个窗体,然后用ShowModal显示。在用Free释放就不行。
或者用caActive:=False也不行。请问我要怎么样在内存中释放这个窗体呢?
谢谢

解决方案 »

  1.   

    procedure TfmMain.Button1Click(Sender: TObject);//通过单击button1创建fmNew窗口
    begin
      fmNew:=TfmNew.Create(Application);
      fmNew.ShowModal;
      fmNew.Free;
    end;你关闭fmNew后自动释放。
      

  2.   

    好象可以在想显示窗体的地方写 form1:=Tform1.create(self)
    使用之后用form1.free释放掉
      

  3.   

    窗体属性NO,不用写关闭语句
    再调用ShowModal
      

  4.   


      fmNew:=TfmNew.Create(nil);
      fmNew.ShowModal;
      fmNew.Free;
      

  5.   

    var form2:tform;
    begin
    form2:=tform.create(application);
    form2.ShowModal;
    form2.Free;
    end;
    /////////////////////////////
    var form2:tform;
    begin
    form2:=tform.create(self);
    form2.ShowModal;
    form2.Free;
    end;都可以,没有错误啊,你一定是在窗口关闭或退出时候做了什么操作了!
      

  6.   

    //在创建之间先判断;
    if not assigned(Form2) then 
    form2:=tform.create(application);
    form2.ShowModal;
    form2.Free;
    //设成NIL,彻底清除
    from2:=nil;
      

  7.   

    用Freeandnil()吧(我可能记的不清楚了)