C++ MFC 实现拖拽文件获取文件路径

新建一个窗口,然后建一个文本编辑框,定义控件变量为值,名字为bPat.
在窗口属性->消息中选择 WM_DROPFILES 消息这个消息,或者在类里建立函数

void CPEDlg::OnDropFiles(HDROP hDropInfo)

函数内容如下:

void CPEDlg::OnDropFiles(HDROP hDropInfo)//
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	TCHAR szPath[MAX_PATH] = { 0 };
	UINT nCount = DragQueryFile(hDropInfo, 0xFFFFFFFF, NULL, 0);
	
	for (UINT idx = 0; idx < nCount; ++idx)
	{
		DragQueryFile(hDropInfo, idx, szPath, MAX_PATH);
		//MessageBox(szPath);//以消息盒子形式显示路径
		//SetDlgItemText(IDC_EDIT1, szPath);//在编辑框内显示路径	
	}
	CString a = (CString)szPath;
	bPtah = a;//在编辑框内显示路径	
	UpdateData(FALSE);//更新数据
	DragFinish(hDropInfo);
	
	CDialogEx::OnDropFiles(hDropInfo);
}

你可能感兴趣的:(C/C++笔记,c++,mfc)