Q&A

  • Create된 폼을 Free시키는 방법???
안녕하세요.



Form1과 Form2가 있을때 버턴을 누르면 Form2를 생성시킬려고 하거든요.



procedure TForm1.BitBtn1Click(Sender: TObject);

begin

Form2 := TForm2.Create(Self);

Form2.Show;

... 중간생략 ....

Form2.Free; <=== 리소스를 해제시킴(옳은 방법인지??)



Form2 := TForm2.Create(Self);

Form2.ShowModal;

... 중간생략 ....

Form2.Free; <=== 리소스를 해제시킴(옳은 방법인지??)

end;



폼을 Show와 ShowModal로 생성한후 리소스를 해제시키는 방법이 잘못 된것 같은데...

리소스 해제가 잘 않되거든요.





2  COMMENTS
  • Profile
    강성만 2000.06.08 21:06
    안녕하세요.



    Form1과 Form2가 있을때 버턴을 누르면 Form2를 생성시킬려고 하거든요.



    procedure TForm1.BitBtn1Click(Sender: TObject);

    begin

    Form2 := TForm2.Create(Self);

    Form2.Show;

    ... 중간생략 ....

    Form2.Free; <=== 리소스를 해제시킴(옳은 방법인지??)



    Form2 := TForm2.Create(Self);

    Form2.ShowModal;

    ... 중간생략 ....

    Form2.Free; <=== 리소스를 해제시킴(옳은 방법인지??)

    end;



    폼을 Show와 ShowModal로 생성한후 리소스를 해제시키는 방법이 잘못 된것 같은데...

    물론 Form2 에서 Action := caFree를 쓴다는 것을 알고 있거든요.

    그런데 Form1에서 꼭 Form2를 생성후 Form1에서 Form2를 Free시켜야 하거든요.



    다시 한번 답변좀 부탁합니다.



  • Profile
    머리나쁜얀 2000.06.08 20:47
    참고 하세여



    procedure Tfrm_1.FormClose(Sender: TObject;

    var Action: TCloseAction);

    begin

    ACTION := CAFREE;

    end;



    procedure Tfrm_1.btn_exitClick(Sender: TObject);

    begin

    close;

    end;