Q&A

  • Runtime시 작업이 디자인시와 동일하게 하려면?
도와주세요..



여러개의 Component(물론 만든 Component)를 동적으로 생성해서 Form에 올려 놓았습니다. 이들을 선택할때 마다 8개의 조절점이 생성됩니다.(Resizing, Moving가능합니다.)

다른건 다 잘되는데.... (물론 최용일님이 올리신 조절점 관련 자료도 참고했습니다.)

최용일님께 감사드립니다.

그런데.... 문제가 있습니다.



제가 만든 Component는 TGraphicControl에서 파생된것이구요

다음의 Event처리를 합니다.



OnMouseDown, OnMouseMove ==> Component의 broder를 표시

OnMouseUp ==> 8개의 조절점을 표시



이 Component를 여러개 생성해서 Form에 위치 시켰는데 선택할때마다 8개의 조절점이 생깁니다.물론 MouseUp시점에서 8개의 조절점을 생성하니까요.

문제는...... 다른놈을 Click했는데도 이전의 Component에 8개의 조절점이 남아있습니다. Clear를 어느시점에 해야할지 망막합니다.



제가 원하는건....

다른 놈이 선택되면 이전에 선택되었던 8개의 조절점이 없어지게 하는겁니다.

어떻게 해야 하는건가요?

델파이를 실행시키면 디자인시에 Form위에서의 Component들의 Edit작업을 Runtime시에 하고 싶거든요.

어떻게 해야 하는가요?





조언 부탁드립니다. 방향이라도 설정해 주시면.....











1  COMMENTS
  • Profile
    최용일 2001.05.18 00:07
    안녕하세요. 최용일입니다.



    예전에 올린 자료는 포커스가 변경될때 조절점이 사라지도록 되어 있을겁니다. 그런데 TGraphicControl에는 포커스란게 존재하지 않죠. 그렇기 때문에 조절점이 사라지지 않는것입니다.



    다른 방법을 모색해야 할거 같군요...



    변수 하나 두어서 새로운 조절점이 생길때마다 그 조절점 컨트롤을 넣어두고 예전의 조절점 컨트롤을 삭제하는 방법두 있겠구요...



    var

    CurControl: TControlSizer;



    procedure Form1.SomeControlMouseUp(...)

    begin

    if (CurControl <> nil) then

    CurControl.Free;

    CurControl := TControlSizer.Create(Self, Sender as TControl);

    end;



    잘 생각해보시면 방법은 많이 있을거 같군요...



    ^^ 항상 즐코하세요...



    유희정 wrote:

    > 도와주세요..

    >

    > 여러개의 Component(물론 만든 Component)를 동적으로 생성해서 Form에 올려 놓았습니다. 이들을 선택할때 마다 8개의 조절점이 생성됩니다.(Resizing, Moving가능합니다.)

    > 다른건 다 잘되는데.... (물론 최용일님이 올리신 조절점 관련 자료도 참고했습니다.)

    > 최용일님께 감사드립니다.

    > 그런데.... 문제가 있습니다.

    >

    > 제가 만든 Component는 TGraphicControl에서 파생된것이구요

    > 다음의 Event처리를 합니다.

    >

    > OnMouseDown, OnMouseMove ==> Component의 broder를 표시

    > OnMouseUp ==> 8개의 조절점을 표시

    >

    > 이 Component를 여러개 생성해서 Form에 위치 시켰는데 선택할때마다 8개의 조절점이 생깁니다.물론 MouseUp시점에서 8개의 조절점을 생성하니까요.

    > 문제는...... 다른놈을 Click했는데도 이전의 Component에 8개의 조절점이 남아있습니다. Clear를 어느시점에 해야할지 망막합니다.

    >

    > 제가 원하는건....

    > 다른 놈이 선택되면 이전에 선택되었던 8개의 조절점이 없어지게 하는겁니다.

    > 어떻게 해야 하는건가요?

    > 델파이를 실행시키면 디자인시에 Form위에서의 Component들의 Edit작업을 Runtime시에 하고 싶거든요.

    > 어떻게 해야 하는가요?

    >

    >

    > 조언 부탁드립니다. 방향이라도 설정해 주시면.....

    >

    >

    >

    >

    >