본문 바로가기
프로그래밍

[윈도우] MFC 부모 다이얼로그가 자식 다이얼로그 아래에만 위치하는 현상

by 밝음의기둥 2017. 6. 28.
반응형

윈도우 MFC 프로그래밍을 하다 보면, 부모 다이얼로그에서 자식 다이얼로그를 생성해서 띄워야 하는 경우가 발생합니다. 이 경우 생성할때 지정하는 부모 윈도우에 따라서 부모 다이얼로그가 자식 다이얼로그의 아래에만 위치하는 현상이 나타납니다. 부모 다이얼로그와 자식 다이얼로그의 위치를 서로 교차할 수 있게 하기위해서는 자식 다이얼로그를 생성할때 지정하는 부모 윈도우를 바탕화면으로 지정하면 됩니다. 바탕화면 윈도우를 얻는 함수는 CWnd::GetDesktopWindow() 입니다.


1. 부모 윈도우를 지정하지 않거나 부모 다이얼로그로 지정한 경우

소스1> m_TestDlg.Create(IDD_WP_TEST_DIALOG, this);

소스2> m_TestDlg.Create(IDD_WP_TEST_DIALOG);


[부모 다이얼로그가 자식 다이얼로그의 아래에만 위치 함]




2. 부모 윈도우를 바탕화면으로 지정한 경우

소스1> m_TestDlg.Create(IDD_WP_TEST_DIALOG, CWnd::GetDesktopWindow());


[부모 다이얼로그가 자식 다이얼로그의 위에 위치할 수 있음]





반응형