首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

文件拖拽的有关问题

2013-08-01 
文件拖拽的问题我知道如何将文件拖拽到一个dialog中。但是现在项目的需求不仅仅是能把文件拖拽到程序中。还

文件拖拽的问题
我知道如何将文件拖拽到一个dialog中。

但是现在项目的需求不仅仅是能把文件拖拽到程序中。还需要能把程序中list列表中显示的文件拖拽出来放到任意的系统中的某个目录下。

求解,应该怎么最? VC?MFC?拖拽
[解决办法]

对话框的Extened Styles中Accept Files选上。然后添加OnDropFiles事件,及相应的函数。


void CMyDlg::OnDropFiles(HDROP hDropInfo) 
{
// TODO: Add your message handler code here and/or call default
int iCount;
char pcFilePath[MAX_PATH];
int iPathLen;
int i;
iCount = DragQueryFile(hDropInfo, 0xffffffff, NULL, 0);

if(iCount>1)   //限定一个,可以不做限定。
{
AfxMessageBox("一次只能检查一个工程哈!");
return;
}

iPathLen = DragQueryFile(hDropInfo, 0, pcFilePath, MAX_PATH);
for(i=iPathLen; i>0; i--)
{
if(pcFilePath[i]=='.')
{
break;
}
}
if(0 == memicmp(&pcFilePath[i], ".XXX", strlen(".kop"))  ) //指定扩展名的。
{
m_strPath=pcFilePath;     //文件名显示在编辑框中,这里改成列表框 也是可以的。
UpdateData(FALSE);
}
else
{
AfxMessageBox("请确认!");
return;
}

CDialog::OnDropFiles(hDropInfo);
}

热点排行