MFC File Icon Drag and Drop
드래그앤드랍기능을 쓰고 싶은
Dialog 나 ListControl 을 리소스 뷰에서 선택한다.
속성 항목
[동작] [Accept Files] 항목을 True 로 바꾼다.
Files 을 드래그앤드랍으로 받을 수 있게 된다.
해당 컴포넌트에 드래그앤드랍이 발생할 경우
OnDropFiles(HDROP hDropInfo)
함수로 메시지가 들어오게 된다.
해당 함수를 오버라이딩 하는 방법은
해당 컴포넌트의 Dialog 클래스를
클래스 뷰에서 선택하고 속성 창을 연다.
WM_DROPFILES 메시지에 OnDropFiles 를 활성화 시켜준다.
그러면 Dialog 클래스 cpp 파일에 OnDropFiles 함수가 생성된다.
다음 코드를 OnDropFiles(HDROP hDropInfo) 함수에 추가하여 실행하여 본다.
int nFiles; char szPathName[MAX_PATH]; // 파일 경로명이 들어간다. CString strFileName; // 드래그앤드롭된 파일의 갯수 nFiles = ::DragQueryFile(hDropInfo, 0xFFFFFFFF, szPathName, MAX_PATH); for (int i = 0; i < nFiles; i++) { // 파일의 경로 얻어옴 ::DragQueryFile(hDropInfo, i, szPathName, MAX_PATH); MessageBox(szPathName, "DropAndDropFile"); } |
'Programming > MFC' 카테고리의 다른 글
MFC Alert MessageBox (0) | 2016.09.06 |
---|---|
MFC Drag And Drop FileName 만 추출 (0) | 2016.08.30 |
MFC Dialog 가 이상한 위치에 배치, (0,0)에 배치 (0) | 2016.08.24 |
MFC CTextProgressCtrl (0) | 2016.08.17 |
Visual Studio 2013에서 MSFlexGrid 추가 할 때 Error (0) | 2016.08.10 |