안녕하세요.. 고수님
요즘 MDI 화면에 대하여 공부하고 있는데 어떻게 구현해야 할지가 몰라서 글을 올립니다.
mdi 화면에는 4 개의 창이 열려져 있읍니다. 편의상 form01, form02, form03, form04 라고 부르겠읍니다. 제가 구현하려는 것은 form01 의 화면 영역에 form02, form03, form04 중 어느 것 하나라도 들어 온다면 form01 에 메시지를 보내려고 합니다.
form02, form03, form04 가 이동을 하거나 resize 될 때, 그 화면(form02, form03, form04 )의 영역이 form01 을 침범하거나 겹치는지를 알수 있는 방법이 있나요?
제가 아는 범위내에서는 아무리 찾아다녀도 안보여서...
제발.. 도와주세요..ㅠ.ㅠ
UnionRect란 API함수를 쓰세요. 두개의 영역에서 겹치는 부분을 돌려주니까요...
if UnionRect(Rect, Form1.BoundsRect, Form2.BoundsRect) then
ShowMessage('두 폼이 겹쳤네...');
OnResize이벤트와 wm_Size메세지를 이용하시면 되겠네요...
^^ 항상 즐코하세요...
초보운전 wrote:
> 안녕하세요.. 고수님
>
> 요즘 MDI 화면에 대하여 공부하고 있는데 어떻게 구현해야 할지가 몰라서 글을 올립니다.
>
> mdi 화면에는 4 개의 창이 열려져 있읍니다. 편의상 form01, form02, form03, form04 라고 부르겠읍니다. 제가 구현하려는 것은 form01 의 화면 영역에 form02, form03, form04 중 어느 것 하나라도 들어 온다면 form01 에 메시지를 보내려고 합니다.
> form02, form03, form04 가 이동을 하거나 resize 될 때, 그 화면(form02, form03, form04 )의 영역이 form01 을 침범하거나 겹치는지를 알수 있는 방법이 있나요?
>
> 제가 아는 범위내에서는 아무리 찾아다녀도 안보여서...
> 제발.. 도와주세요..ㅠ.ㅠ
>
>