拜托了!

解决方案 »

  1.   

    关闭一个窗口有几种方式:最小化这个窗口,隐藏这个窗口,释放这个窗口,这句话就是说但这个窗口关闭的时候释放这个窗口,它应该是在form的onclose事件里面的
      

  2.   

    就是form.onclose()
     begin
      Action:=cafree;
     end;它的做用是不是相当于form.relase或form.free?
      

  3.   

    procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
      action:=cafree; //TCloseAction = (caNone, caHide, caFree, caMinimize);end;
    其中action有四种取值按顺风序分别:什么也不做,隐藏,释放,最小化
    action代表当触发窗体OnClose事件时,以哪种方式去响应!
      

  4.   

    其实你看一下Forms单元的代码
    forms.pas的4513行就明白了
    procedure TCustomForm.Close;
    var
      CloseAction: TCloseAction;
    begin
      if fsModal in FFormState then
        ModalResult := mrCancel
      else
        if CloseQuery then
        begin
          if FormStyle = fsMDIChild then
            if biMinimize in BorderIcons then
              CloseAction := caMinimize else
              CloseAction := caNone
          else
            CloseAction := caHide;
          DoClose(CloseAction);
          if CloseAction <> caNone then
            if Application.MainForm = Self then Application.Terminate
            else if CloseAction = caHide then Hide
            else if CloseAction = caMinimize then WindowState := wsMinimized
            else Release;
        end;
    end;
    当等于caFree时就Release;
    而Close是响应WM_CLOSE调用的
    forms.pas的4093行
    procedure TCustomForm.WMClose(var Message: TWMClose);
    begin
      Close;
    end;
    也可以是由你的代码调用
      

  5.   

    当form.onclose事件触发时,action参数会取一个值,缺省情况它取caMinimize,因为传参caMinimize的结果不会影响到一分配的类型指针空间,不然,可能会因为内存使用错误导致内存泄漏。
      

  6.   

    当form.onclose事件触发时,action参数会取一个值,缺省情况它取caMinimize,因为传参caMinimize的结果不会影响到已分配的类型实例指针空间,不然,可能会因为内存使用错误导致内存泄漏。
        如果action:=cafree 就把分配给Tform类型实例的内存空间释放,但是,这仍然是不可靠的,因为,form实例的指针仍然指向这个内存地址,所以你必须在form.ondestroy事件中写如下代码:form:=nil;
         这就完了吗?NO!
         现在,你无法将它再实例化了,So,你在从新实例化它之前,必须如下:
         if not assigned(form) then
            form:=Tform.create(self);
            form.show;
      

  7.   

    在OnClose 事件中
    Free;

    self.Free;
    有什么区别?
      

  8.   

    vcmfc,great123,冰棍他妈的老B真难操
    vcmfc,great123,再操冰棍他妈的B----大贱B
    vcmfc,great123,冰棍,你妈是我干的!真的!
    vcmfc,great123,冰棍,Mda在床上等我,怎么办?
    vcmfc,great123,冰棍,Mda叫我晚上去操她!
    vcmfc,great123,冰棍,你老妈前几天跟一条狗搞在一起呀!!
    vcmfc,great123,冰棍,你老妈前几天被狗操翻了