MFC怎么实现鼠标拖动一个文件(夹)
要实现的功能是用鼠标左键拖动一个任意的文件或者是文件夹,到一个对话框,对话框就显示他的路径名。怎么实现啊!用的什么函数或是类,思路是什么,不要求有代码...
要实现的功能是用鼠标左键拖动一个任意的文件或者是文件夹,到一个对话框,对话框就显示他的路径名。怎么实现啊!用的什么函数或是类,思路是什么,不要求有代码
展开
1个回答
展开全部
很简单啊,生成对话框消息映射OnDropFiles,然后在create对话框之前还得调用对话框的函数DragAcceptFiles(TRUE)。在映射函数中取文件路径名:
char szFileName[MAX_PATH + 1] = {0};
UINT nFiles = DragQueryFile(hDropInfo, 0xFFFFFFFF, NULL, 0);
if(nFiles <=0)
{
DragFinish(hDropInfo);
return;
}
DragQueryFile(hDropInfo, 0/*取第0个文件*/, szFileName, MAX_PATH);
// 结束此次拖拽操作,并释放分配的资源
DragFinish(hDropInfo);
char szFileName[MAX_PATH + 1] = {0};
UINT nFiles = DragQueryFile(hDropInfo, 0xFFFFFFFF, NULL, 0);
if(nFiles <=0)
{
DragFinish(hDropInfo);
return;
}
DragQueryFile(hDropInfo, 0/*取第0个文件*/, szFileName, MAX_PATH);
// 结束此次拖拽操作,并释放分配的资源
DragFinish(hDropInfo);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询