다이얼로그 창 크기 변경에 따라서 내부 컨트롤 크기도 다이얼로그 사이즈에 따라서 자동으로 변경시켜주고 싶다면 다음과 같이 코드를 작성해본다.

 

void CMyDlg::OnSize(UINT nType, int cx, int cy)
{
   CDialog::OnSize(nType, cx, cy); 

   CWnd* pCtl = GetDlgItem(IDC_TREE);

   if (!pCtl) { return; }

   CRect rectCtl;              
   pCtl->GetWindowRect(&rectCtl); 
   ScreenToClient(&rectCtl);      

   pCtl->MoveWindow( rectCtl.left, rectCtl.top, cx- 2 * rectCtl.left, cy- rectCtl.top - rectCtl.left, TRUE);

   return;
}

 

+ Reference

http://snipplr.com/view/14659/mfc-resize-control-in-cdialog-app/

 

 

BELATED ARTICLES

more