我在关闭窗体是用了:
form1.Close;
form1.Free;可是再次打开窗体的时候总是出错,不知为何?acces violation at adress 00000000,read of adress 00000000还请各位高手指教!

解决方案 »

  1.   

    你调用了Free方法释放了From对象,又去调用它的Show方法当然出错,
    去掉Form.free就可以了
      

  2.   

    你可以用这样打开窗体form1
    procedure TForm1.Button1Click(Sender: TObject);
    begin
          form1:=Tform1.Create(nil);
          form1.Show;
    end;
      

  3.   

    不需要Form.free,delphi会自动释放和回收
      

  4.   

    要初始化窗体,可以对窗体的oncreate事件进行操作
      

  5.   

    如果 Form1 是自动创建的窗口,则只需要 Show 和 close ,不要 Free。
    如果窗体是自己控制的,则需要创建和释放。
    var
      fa: TAboutForm;
    begin 
      fa := TAboutForm.Create(Self);
      fa.ShowModal;
      fa.Free;
    end;
      

  6.   

    在CLOSE事件中加入如下代码试试:
    begin
      Action := caFree;
    end;