|
감사합니다.
이것가지고 죙일 삽질햇는데...
기초가 부족하니 거시기 하네요 쩝쩝...
마제 님이 쓰신 글 :
: void __fastcall TForm2::CreateParams(TCreateParams &Params)
: {
: TForm::CreateParams(Params);
: Params.WndParent = Application->MainForm->Handle;
: }
:
: 이렇게 하시면 Sub폼이 항상 메인보다 위에 올라가게 되더군요...
:
: 대신 문제가 MainForm minimize 될때 sub폼이 이미 minimize 되어있으면
:
: 같이 숨어야 하는데 계속 남아있는 문제가 있더군요...
:
: 그래서 이 부분은 직접 구현했습니다.
:
:
: 장성호 님이 쓰신 글 :
: : main폼이 active되었을때도 main폼에 맨 앞쪽에 오는게 아니라
: : sub폼이 main폼 앞쪽에 보이게 하려면?
: :
: :
: : 2007로 했을경우에는 아무코딩도 해주지않아도 되던데..
: : 2007 이하 버젼에서 아래와 같이 기능을 구현하고 싶습니다.
: :
: : [상황]
: : -SDI 로 어플리케이션이구요
: : -main폼이 있구, 독립된 sub폼이 2개이상 Show로 떠 있는 상황입니다.
: :
: : [원하는바]
: : -main폼이 active되었을때도 main폼에 맨 앞쪽에 오는게 아니라
: : sub폼이 main폼 앞쪽에 배치되어있게 하고 싶습니다.
: : -sub폼끼리는 active된 폼이 앞쪽에 오는게 맞구요
: :
: : - stayontop은 아닙니다.
: : 다른어플리케이션은 active 될때 얼마든지 앞쪽에 올수 있어야 하니까요
: :
: : SetWindowPos로 메인폼과 sub폼이 active/deactive/wm_poschanging 때
: : hwndInsertAfter를 조작하면서 아무리 해봐도 깔끔하게 안되네요
: :
: : 마우스 클릭으로 active를 바꿀때는 크게 문제없이 되는데..
: :
: : [안될때]
: : - 메인폼이 minimize되었다가 복구될때..
: : - 메인폼의 caption을 잡고 폼을 움직이다가 놓았을때..
: : 이런경우에는 잘안되네요.. 쩝쩝..
: :
: : 2007(delphi2007 또는 c++builder2007)에서는 이기능을 어떻게 구현했는지 알고싶고
: : 그이하버젼 ( 현재 c++Builder 6.0 과 delphi7사용)에서 구현하려면 어떻게 해야할지...
: :
: : 조언좀 부탁드립다.
: :
: : 감사합니다.
|