티스토리 뷰

프로그래밍/MFC

MDI 창 활성화

에어버스 2022. 9. 2. 10:21

 

MDI 방식으로 프로젝트 만들고 각 ChildFrame 의 View 에 View 전체에 Dialog 를 보여주고 있는 상황에서
현재 View 전체를 채우고 있는 Dialog 의 Frame (View의 Frame) 을 강제로 활성화 시킨다.

1
2
3
4
5
CStockView* pView = (CStockView*)GetParent();
HWND hwnd = ((CMDIFrameWnd*)AfxGetMainWnd())->m_hWndMDIClient; // MDI클라이언트영역의 핸들
 
// WPARAM 에 활성화하려는 ChildFrame 의 핸들 (Dialog를 갖는 ChildFrame 의 핸들) 을 저장
::PostMessage(hwnd, WM_MDIACTIVATE, WPARAM(pView->GetParentFrame()->GetSafeHwnd()), LPARAM(0));
cs


위 코드는 ChildFrame의 View에 들어가는 Dialog(호가주문창) 에서 메시지를 보내는 코드이다.

hwnd 는 무조건 코드 변경없이 기본 코드로 들어가고,
WPARAM 에 활성화 시킬 Frame의 핸들을 전달하면 되는거 같다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30