전체 글
다이얼로그 창 크기 변경에 따라서 내부 컨트롤 크기도 다이얼로그 사이즈에 따라서 자동으로 변경시켜주고 싶다면 다음과 같이 코드를 작성해본다. 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); r..
mfc 다이얼로그에 Drag and drop을 구현해보자. 윈도우 메세지 WM_DROPFILES를 찾아서 OnDropFiles 함수를 생성한다. OnDropFiles 함수 정의 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 void CDemoDlg::OnDropFiles(HDROP hDropInfo) { int dropFilesCnt = 0; char FilePath[MAX_PATH+MAX_PATH]; dropFilesCnt = DragQueryFileA(hDropInfo, 0xFFFFFFFF, FilePath, MAX_PATH); for (int i = 0; i
CTreeCtrl::Expand BOOL Expand( HTREEITEM hItem, // 확장 트리 항목의 핸들 UINT nCode // 종류의 동작을 나타내는 플래그 ); nCode TVE_COLLAPSE 목록을 축소 TVE_EXPAND 목록을 확장 추가 정보 : https://msdn.microsoft.com/ko-kr/library/hx4e0e58.aspx Expand함수를 이용하여 다음과 같은 함수를 하나 만들고, nCode로 확장/축소 플래그를 설정하도록 한다. 함수 정의 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 void ExpandTreeItem(CTreeCtrl &tree, HTREEITEM hItem, UINT nCode) { HTREEITEM hChild; ..