프로그래밍/윈도우 프로그래밍
간단한 Drag&Drop 구현하기
체리
2007. 3. 31. 16:09
반응형
간단하게 함수를 사용하기 위하여 클래스 위저드를 연다.
Class Info -> Advanced options -> Message filter에서 Window를 선택하고,
다시 Message Maps로 이동한다.
Messages에서 다시 함수를 찾아보게 되면 WM_DropFiles가 보일 것이다.
해당 함수를 추가한다.
Drag&Drop을 활성화 하기 위하여 아래의 코드를 초기화 하는 부분에 추가해 준다.
DragAcceptFiles(true);
그리고 다음의 코드를 원하는 곳에 응용하여 준다.
CHAR szPath[1024]; // 기본 파일 경로 및 파일명을 가져오기 위해 사용
CFileStatus fileStatus; // file 정보를 가져올 때 사용
DragQueryFile(hDropInfo, 0, (LPTSTR)szPath, 1023); // 입력된 첫번째 파일 정보를 읽어온다.
CFile::GetStatus(szPath, fileStatus); // 파일 정보를 읽음
아래 코드를 이용할 수도 있을 것이다.
SHFILEINFO shFileInfo;
SHGetFileInfo(szPath, NULL, &shFileInfo, sizeof(SHFILEINFO), SHGFI_DISPLAYNAME | SHGFI_ICON);
데브피아의 자료실에서 참고한 코드 및 자작 코드 짬뽕 ^^
반응형