如何在对话框中实现文件拖放功能打开,如何在对话框中实现文件拖放功能的操作
如何在对话框中实现文件拖放功能
在对话框上添加一个画面控制,然后把接受文件属性修改成没错。如果是想托图片的话需要把类型改成位图。在头文件里加入:afx _ msg void OnDropFiles(HDROP hDropInfo);在卡片打印处理机(卡片打印处理器的缩写)文件里加入:ON_WM_DROPFILES()在OnInitDialog()的最后加入:DragAcceptFiles(TRUE);在卡片打印处理机(卡片打印处理器的缩写)文件里添加:void CTestDragDlg:OnDropFiles(HDROP hDropInfo){
int nFileCount=DragQueryFile(hDropInfo,-1,NULL,0);
TCHAR * strFilePath;
int dwSize
if (nFileCount==1)
{
dwSize=DragQueryFile(hDropInfo,0,NULL,0);
strFilePath=新TCHAR[dw尺寸1];
if (strFilePath)
{
DragQueryFile(hDropInfo,0,strFilePath,dwSize 1);
//检索由成功的拖放操作产生的拖放文件的名称。
//做某事证明成功
删除[]strfile路径;
}
}
CDialog:OnDropFiles(hDropInfo);
拖动完成(hDropInfo);
invalidate();
}
到此为止已经结束。为了证明拖拽文件好的可以做一个小测试。
在对话框中加入一个编辑框,
然后在头文件中加入:CString m _ StrPath
在卡片打印处理机(卡片打印处理器的缩写)文件的数据交换(CDataExchange* pDX)函数中加入
DDX_Text(pDX,IDC_EDIT0,m _ StrPath);
在拖拽文件后添加:
m_StrPath .格式( %s ,strfile路径);
更新数据(假);
然后测试就会发现只要拖拽一个文件就会在编辑框里出现此文件的全路径。
来自:http://博客。新浪。com。cn/s/blog _ 6a 6 D5 ba 80100 lcay超文本标记语言
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。