把action := caFree放在Form的OnClose事件.
当Form关闭时所有占用的内存将被释放.

解决方案 »

  1.   

    看你的窗口是怎么显示的
    如果是用showmodal,
    那么参考下面代码
    Begin
    {}ModalForm := TModalForm.Create(Application);
    {}try
    {}{}if ModalForm.ShowModal = mrOk then
    {}{}{};
    {}finally
    {}{}ModalForm.free;
    {}{}ModalForm := nil;
    {}end;
    end.如果是用show
    参考下面代码
    Begin
    {}if not Assigned(Modeless) then 
    {}{}Modeless := TModeless.Create(Application);//创建窗体
    {}Modeless.Show
    end;procedure TModeless.FormClose(Sender: TObject; 
    var Action: TCloseAction);
    begin
    {}Action := caFree;//这个很重要!!!!!!!!!!!!
    end;procedure TModeless.FormDestroy(Sender:TObject);
    begin
    {}Modeless := nil ;//把Modeless 变量设为nil
    end;