Q&A

  • 폼 두개가 있을 때 한 폼에서 메세지를 띄우면 띄운 폼이 뒤로 넘어갑니다. T_T
폼1에서 폼2를 동적으로 생성하거나 자동으로 생성해서 show를 해주거나

폼2에서 메세지를 출력하면 폼 2위로 메세지가 출력됩니다.

그런데 폼2를 작업 표시줄에 독립된 어플처럼 띄워주기 위해(메신저처럼)

게시판을 뒤져 방법을 찾아 냈습니다. CreateParams을 오버라이드 해서 수정해주니

되더군요..

procedure TForm2.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.WndParent := GetDesktopWindow;

end;

그런데 문제가 발생했습니다. 이렇게 폼2를 만들었더니 폼2에서 메세지를 띄우면

폼2위에서 메세지가 뜨는게 아니라 폼2가 폼1 뒤로 훌러덩 넘어가 버리고 메세지가 뜹니다.

setWindowPos로 위치도 잡아봤지만 메세지가 뜨는 타이밍에 위치가 변경되는 거라 그런지

잘 안되네요.

제가 테스트하고 있는 소스를 첨부했습니다. 시간있으시면 테스트해보시고

가르쳐주세요. 감사합니다.
0  COMMENTS