본문 바로가기

MFC 인터페이스

파일 드로그앤 드롭 이벤트 처리

파일 탐색기 등에서 파일을 드래그 & 드롭해서 내가 만든 프로그램에 놓았을 때,

 

1. ON_WM_DROPFILES() // 클래스 위저드에서 WM_DROPFILES를 재정의한다.
2. DragAcceptFiles();

BEGIN_MESSAGE_MAP(CLeftView, CTreeView)
//{{AFX_MSG_MAP(CLeftView)
ON_WM_DROPFILES() // 클래스 위저드에서 WM_DROPFILES를 재정의한다.
//}}AFX_MSG_MAP
END_MESSAGE_MAP()


void CLeftView::OnInitialUpdate()
{
CTreeView::OnInitialUpdate();

// 파일 드래그 & 드롭을 위해 불러준다.
DragAcceptFiles();
}

 

void CLeftView::OnDropFiles(HDROP hDropInfo)
{
int nFiles;
char szPathName[MAX_PATH];
CString strFileName;

// 드롭된 파일의 갯수
nFiles = ::DragQueryFile( hDropInfo, 0xFFFFFFFF, szPathName, MAX_PATH );

for(int i = nFiles-1 ; i >= 0; i--)
{
// 파일의 경로 얻어옴
::DragQueryFile(hDropInfo, i, szPathName, MAX_PATH);
AfxMessageBox( szPathName );
}

::DragFinish(hDropInfo);

CTreeView::OnDropFiles(hDropInfo);
}

 

 

'MFC 인터페이스' 카테고리의 다른 글

유저 메시지 ( 센드 메시지 ) 방법  (0) 2013.10.20
운영체제 32bit 64비트 확인  (0) 2013.10.20
리스트 컨트롤 스크롤 이동  (0) 2013.10.20
MFC 몇가지 코드  (0) 2013.10.19
디비 연동  (0) 2013.07.09