[MFC] MainFrame 크기 고정
저장소/VC++최초 실행시 MainFrame의 크기를 정하기 위해서는 PreCreateWindow를 재정의하여 다음과 같이 해주면 된다.
MainFrame의 크기를 고정하기 위해서는 WM_GETMINMAXINFO 메시지를 다음과 같이 처리해주면 된다.
이와 같이 처리하면 MainFrame의 크기를 변경할 수 없게 된다.
크기 변경 불가, 최대화 버튼 비활성화를 처리하기 위해서는 PreCreateWindow에서 style을 다음과 같이 변경해주면 된다.
cs.style &= ~FWS_MAXMIZEBOX; cs.style &= ~FWS_THICKFRAME;
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { if( !CFrameWndEx::PreCreateWindow(cs) ) return FALSE; cs.cx = 1024; cs.cy = 768; ... }
MainFrame의 크기를 고정하기 위해서는 WM_GETMINMAXINFO 메시지를 다음과 같이 처리해주면 된다.
void CMainFrame::OnGetMinMaxInfo(MINMAXINFO* lpMMI) { lpMMI->ptMinTrackSize.x = 1024; lpMMI->ptMinTrackSize.y = 768; lpMMI->ptMaxTrackSize.x = 1024; lpMMI->ptMaxTrackSize.Y = 768; CFrameWndEx::OnGetMinMaxInfo(lpMMI); }
이와 같이 처리하면 MainFrame의 크기를 변경할 수 없게 된다.
크기 변경 불가, 최대화 버튼 비활성화를 처리하기 위해서는 PreCreateWindow에서 style을 다음과 같이 변경해주면 된다.
cs.style &= ~FWS_MAXMIZEBOX; cs.style &= ~FWS_THICKFRAME;
'저장소 > VC++' 카테고리의 다른 글
[Win32 API] GetAsyncKeyState (0) | 2011.11.25 |
---|---|
[MFC] DestroyWindow (0) | 2011.11.24 |
[Win32 API] Window Styles (0) | 2011.10.10 |
[MFC] CFileDialog 사용 주의점 (0) | 2011.09.23 |
[Error/Warnning] error LNK2005 (0) | 2011.08.16 |