MFC总结(18) --- 实现拖拽效果

原创 2015年11月21日 15:36:22

效果图


Windows下很多工具,都实现了拖拽的功能,代码功能相对来说比较简单,一共需要两个步骤

第一步:

创建MFC工程后,将该Dlg对话框中的Accept Files属性设置为True, 添加一个Edit Control对话框,给该对话框绑定一个Edit类型的变量 m_edt。

  

   第二步:使用快捷键Ctrl +shift +x 打开类向导,添加 WM_DROPFILES 消息

       

实现代码

void C可拖拽代码程序Dlg::OnDropFiles(HDROP hDropInfo)
{
	// TODO:  在此添加消息处理程序代码和/或调用默认值

	CDialogEx::OnDropFiles(hDropInfo);

	//拖动单个文件的时候
	WCHAR wcStr[MAX_PATH];
	DragQueryFile(hDropInfo, 0, wcStr, MAX_PATH);//获得拖曳的文件的文件名  
	m_edt.SetWindowText(wcStr);


	//当需要拖动多个的时候
	/*
	int DropCount = DragQueryFile(hDropInfo, -1, NULL, 0);//取得被拖动文件的数目  
	for (int i = 0; i < DropCount; i++)
	{
		WCHAR wcStr[MAX_PATH];
		DragQueryFile(hDropInfo, i, wcStr, MAX_PATH);//获得拖曳的第i个文件的文件名  
		m_edt.SetWindowText(wcStr);
		//listbox.AddString(wcStr);
	}
	*/

	DragFinish(hDropInfo);  //拖放结束后,释放内存  
}



MFC 实现图片的拖拽功能,代码很详细,贴过去就能用!

拖动是界面编程频繁使用的一个效果,在windows系统下可谓大行其道。纵观时下的应用软件几乎各个都支持各种各样拖动的效果,windows7更是把拖动做到了极致。其实说起来拖动的实现也很简单,对于有句柄...

Drag &amp; Drop 全解析

 一、基本概念拖放,是指用鼠标拖动的方法,在不同程序的窗口之间、同一个程序的不同窗口之间或同一程序同一窗口的不同控件之间,进行移动、复制和粘贴等操作的技术。拖放操作是在操作系统的帮助下完成的。被拖动的...

vc++ mfc中拖动效果的实现

 http://blog.csdn.net/cq20110310/article/details/6926017 分类: VC++ VC++ mfc 2011-11-01 19:39 ...
  • h_h_w
  • h_h_w
  • 2014年10月24日 21:30
  • 1609

在STK里使用飞机任务模块

在STK里使用飞机任务模块 Using the Aircraft Mission Modeler 一、概述 2 二、在3D图形窗口中定义任务 2 1 环境设置 2 2 选择飞机模...

jquery简单实现拖拽效果

  • 2016年01月28日 11:05
  • 34KB
  • 下载

VC 树控件的拖拽实现 MFC .

只需要将你的树控件类型改成CXTreeCtrl,并将以下头文件:XTreeCtrl.h和实现文件:XTreeCtrl.cpp包含进你的工程。   然后在void CXTreeCtrl::OnLBu...

VS2008中,MFC对话框类实现类似QQ拖拽上传文件的功能,CWnd::OnDropFiles

DropFiles - lvlijuan001@126 - lvlijuan001@126的博客" src="http://img.blog.163.com/photo/SiSCBTA0PNoIlOp...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MFC总结(18) --- 实现拖拽效果
举报原因:
原因补充:

(最多只允许输入30个字)