Q&A

  • child폼 닫기..
안녕하세요..

mdi를 이용해서 만들고 있는데..

child폼이 닫히질 않고 mdi 폼 왼쪽 맨 아래쪽에 가서 붙어버리네요..ㅡ.ㅡ;;

닫기 버튼을 만들어서 close; 를 시켜줘도 그래요.

child는 form2:=form2.crete(self);

form2.show;

이렇게 만들었거든요.

hide를 해줘야 하는건가? ㅡㅡa

답변부탁드립니다.

2  COMMENTS
  • Profile
    홍성락 2001.08.04 01:10
    성필 wrote:

    > 안녕하세요..

    > mdi를 이용해서 만들고 있는데..

    > child폼이 닫히질 않고 mdi 폼 왼쪽 맨 아래쪽에 가서 붙어버리네요..ㅡ.ㅡ;;

    > 닫기 버튼을 만들어서 close; 를 시켜줘도 그래요.

    > child는 form2:=form2.crete(self);

    > form2.show;

    > 이렇게 만들었거든요.

    > hide를 해줘야 하는건가? ㅡㅡa

    > 답변부탁드립니다.

    ///////////////////////////////////////////////////////////

    폼이닫힐때는 즉,TCloseAction을보면 caNone, caHide, caFree, caMinimize종류가 있는데요. 폼을 닫으려할때 생성시킨 종류와 폼속성 변화에 따라 Hide, Minimize등이 일어납니다. 따라서 폼이벤트에는 아래것들을 써주는 습관을 갖는것이 좋습니다.

    메모리도 아끼고요....

    더좋은 내용은 게시판에서 FormCreate등을 찾아보시는것이 좋습니다.

    ------------------------------------------------------------------------------

    procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);

    begin

    Action := caFree;

    end;



    procedure TForm2.FormDestroy(Sender: TObject);

    begin

    Form2 := nil;

    end;



    ///////////////////

    참고로 폼을 한개만 생성시키고자 할때는 아래처럼 호출하세요

    f not(assigned(Form2)) then

    Form2 := TForm2.Create(nil);

    Form2.Show;

  • Profile
    델델델 2001.08.04 01:01
    성필 wrote:

    > 안녕하세요..

    > mdi를 이용해서 만들고 있는데..

    > child폼이 닫히질 않고 mdi 폼 왼쪽 맨 아래쪽에 가서 붙어버리네요..ㅡ.ㅡ;;

    > 닫기 버튼을 만들어서 close; 를 시켜줘도 그래요.

    > child는 form2:=form2.crete(self);

    > form2.show;

    > 이렇게 만들었거든요.

    > hide를 해줘야 하는건가? ㅡㅡa

    > 답변부탁드립니다.



    Form Close 이벤트에서 이렇게 작성해보세요.



    Action := caFree;