Q&A

  • Application,Self가 뭐예요?
델파이 초보자 입니다.



소스를 분석하다 보면

XXX.Create(Application);

XXX.Create(Self);가 있는데요

이 Application과 Self가 뭘 뜻하는것이고 어떻게 써야하는지요?



하나더 있습니다.

프로젝트 개발중에 폼이 30여개가 소요될때

제가 책에서 보기로는 이 폼들이 처음 부터 메모리로 올라와서 프로그램이 느려지니 필요할때 메모리로 올리고 필요없으면 메모리에서 내리라고 하느데요

먼저 프로젝트 옵션 대화상자에서 auto-create forms에 폼을 놓지말고

Available forms로 폼을 옮겨놓으라고 하느데요

그다음에 어떻게 하라는 말이 없어서 난감합니다.

Available쪽에 있는 폼은 어떻게 사용하고 또 메모리에서는 어떻게

없애는지요

너무 초보적인 질문이라 죄송합니다.





1  COMMENTS
  • Profile
    안치봉 1999.04.27 08:59
    한경수 wrote:

    > 델파이 초보자 입니다.

    >

    > 소스를 분석하다 보면

    > XXX.Create(Application);

    > XXX.Create(Self);가 있는데요

    > 이 Application과 Self가 뭘 뜻하는것이고 어떻게 써야하는지요?

    >

    > 하나더 있습니다.

    > 프로젝트 개발중에 폼이 30여개가 소요될때

    > 제가 책에서 보기로는 이 폼들이 처음 부터 메모리로 올라와서 프로그램이 느려지니 필요할때 메모리로 올리고 필요없으면 메모리에서 내리라고 하느데요

    > 먼저 프로젝트 옵션 대화상자에서 auto-create forms에 폼을 놓지말고

    > Available forms로 폼을 옮겨놓으라고 하느데요

    > 그다음에 어떻게 하라는 말이 없어서 난감합니다.

    > Available쪽에 있는 폼은 어떻게 사용하고 또 메모리에서는 어떻게

    > 없애는지요

    > 너무 초보적인 질문이라 죄송합니다.

    >

    >



    안녕하신지요?.



    1.Application



    현재실행중인 프로그램을 대표하는 것이라고 할수 있습니다.

    Application.ExeName... 같이...



    2.Self



    OOP(객체위주프로그램잉방식)에서 나온 개념으로 객체 자신을 의미하는 겁니다. 예를 들면 Form1.Self 는 바로 Form1 자체를 대표하는겁니다.

    더 예를 들면...



    procedure TForm1.Button....

    begin

    self.Width := 1000; // 곧 Form1.Width := 1000 과 같습니다.

    end;



    3.폼이 많은데...



    폼이 많을때는 동적으로 생성시켜 주어야 합니다. 예를 들어 프로그램의 정보를 보여주는 다이아로그박스를 동적으로 생성하려면 우선은 유닛을 추가하시고요. 버턴을 누를때나 메뉴를 선택했을때 아래처럼...



    uses AboutBox;



    ...

    ...



    procedure TForm1.Button...

    var

    inf: TAboutBox;

    begin

    inf := TAboutBox.Create(self);

    inf.ShowModal;

    inf.Free;

    end;