Q&A

  • 캡션바에서... .
캡션바로 폼을 이동시킨후 마우스를 놓는 시점의 이벤트를 어떻게 잡아 낼 수 있나요??



폼 이동후 마우스 놓는 시점에서 이벤트 처리를 하고 싶은데.. 이벤트를 어떻게 잡아야 할지 몰겠어서....



많은 답변을 부탁드립니다..

1  COMMENTS
  • Profile
    떠버기 2001.09.22 18:46
    폼을 자석처럼 사용하는 팁을 응용하면 될것 같은데요.

    예제는 아래와 같습니다.

    아래사항을 테스트 해보시면 원하는 답변이 나올것도 같은디. 제생각에는요.

    .....

    private

    { Private declarations }

    procedure WMNCHitTest( var Message: TMessage);message WM_NCHITTEST;

    procedure WMMoving(var Message : Tmessage);message WM_MOVING;

    public

    { Public declarations }

    end;



    var

    frmTEST: TfrmTEST;



    implementation



    {$R *.DFM}



    procedure TfrmTEST.WMMoving(var Message: Tmessage);

    var

    Rt : Trect;

    begin

    // 캡션바로 폼을 이동시킨후 마우스를 놓는 시점의 이벤트를 잡는다.

    with TRect(Pointer(Message.LParam)^) do

    begin

    if (Left < 30) and (Left > -30) then

    begin

    Left := 0;

    Right := Self.Width;

    end;



    if (Top < 30) and ( Top > -30) then

    begin

    Top := 0;

    Bottom := Self.Height;

    end;

    end;

    end;



    procedure TfrmTEST.WMNCHitTest(var Message: TMessage);

    begin

    inherited;

    if Message.Result = HTCLIENT then Message.Result := HTCAPTION;



    end;



    lthe wrote:

    > 캡션바로 폼을 이동시킨후 마우스를 놓는 시점의 이벤트를 어떻게 잡아 낼 수 있나요??

    >

    > 폼 이동후 마우스 놓는 시점에서 이벤트 처리를 하고 싶은데.. 이벤트를 어떻게 잡아야 할지 몰겠어서....

    >

    > 많은 답변을 부탁드립니다..