Q&A

  • 모달폼이 그 이전자리를 기억하게하려고 하는데
모달폼을 띄워서 폼을 움직였습니다.

모달폼을 죽이고 다시 띄우면 그전의 자리를 인식하도록

할려고 합니다.

고수님들의 답변을 부탁합니다.

1  COMMENTS
  • Profile
    cyber57 2000.11.10 20:51
    제가 작성한 아래의 코드들 참조하면 되실겁니다.

    도움이 되셨으면 합니다



    1. 먼저 애플리케이션을 열고 빈폼위에 버튼을 하나 올리고 폼을 하나 추가합니다.

    type

    TForm1 = class(TForm)

    Button1: TButton; //폼위에 올린 버튼 컴포넌트

    procedure Button1Click(Sender: TObject);//버튼 이벤트

    procedure FormCreate(Sender: TObject); //폼생성 이벤트

    private

    { Private declarations }

    public

    { Public declarations }

    FormX, FormY: Integer; //모달폼의 위치 저장 변수

    end;



    ..... 중략

    uses Unit2;



    procedure TForm1.Button1Click(Sender: TObject);

    begin

    Form2.ShowModal;

    end;



    procedure TForm1.FormCreate(Sender: TObject);

    begin

    FormX := Left + Width; //모달폼의 X위치

    FormY := Top; //모달폼의 Y위치

    end;



    2. 두번째 폼에서 위치값을 가져옵니다.



    ..... 중략



    uses Unit1;



    {$R *.DFM}



    //폼이 화면에 보여질때 저장된 위치값을 가져옴

    procedure TForm2.FormShow(Sender: TObject);

    begin

    Left := Form1.FormX;

    Top := Form1.FormY;

    end;



    //종료될때 모달폼의 위치값 저장

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

    begin

    Form1.FormX := Left;

    Form1.FormY := Top;

    end;





    호야 wrote:

    > 모달폼을 띄워서 폼을 움직였습니다.

    > 모달폼을 죽이고 다시 띄우면 그전의 자리를 인식하도록

    > 할려고 합니다.

    > 고수님들의 답변을 부탁합니다.