简单的实现对话框中文件的拖拽功能
2009-11-05 15:44
429 查看
今天搞了一个文件的拖拽功能,其实实现起来相当的简单。具体步骤如下:
1.在对话框属性页的Extended Styles中选中Accept Files属性。
2.添加消息响应函数 OnDropFiles(HDROP hDropInfo);
注意这个ClassWizard中可能选不到指定的消息。可以手动的在消息队列中加入如下的消息响应
BEGIN_MESSAGE_MAP(CRecPlayerDlg, CDialog)
//{{AFX_MSG_MAP(CRecPlayerDlg)
...
ON_WM_DROPFILES()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
消息函数的具体实现可以参考如下
void C***Dlg::OnDropFiles(HDROP hDropInfo)
{
// TODO: Add your message handler code here and/or call default
DWORD nFileNameSize = DragQueryFile(hDropInfo, 0, NULL, 0);
char * szFileName = new char[nFileNameSize + 1];
DragQueryFile(hDropInfo, 0, szFileName, nFileNameSize + 1);
//当得到了拖拽进入窗口的文件名(包括路径)就可以做自己的事情了
....
}
1.在对话框属性页的Extended Styles中选中Accept Files属性。
2.添加消息响应函数 OnDropFiles(HDROP hDropInfo);
注意这个ClassWizard中可能选不到指定的消息。可以手动的在消息队列中加入如下的消息响应
BEGIN_MESSAGE_MAP(CRecPlayerDlg, CDialog)
//{{AFX_MSG_MAP(CRecPlayerDlg)
...
ON_WM_DROPFILES()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
消息函数的具体实现可以参考如下
void C***Dlg::OnDropFiles(HDROP hDropInfo)
{
// TODO: Add your message handler code here and/or call default
DWORD nFileNameSize = DragQueryFile(hDropInfo, 0, NULL, 0);
char * szFileName = new char[nFileNameSize + 1];
DragQueryFile(hDropInfo, 0, szFileName, nFileNameSize + 1);
//当得到了拖拽进入窗口的文件名(包括路径)就可以做自己的事情了
....
}
相关文章推荐
- WinForm实现简单的拖拽文件到出题的功能(C#)(3)
- 如何在对话框中实现文件拖放功能
- python tornado实现简单的文件上传功能
- 如何在文档视框架下简单实现拖拽方式打开文件
- PHP实现简单的监控nginx日志文件功能
- MFC单个控件实现文件拖拽功能
- vuejs2.0运用原生js实现简单的拖拽元素功能
- VS2008中,MFC对话框类实现类似QQ拖拽上传文件的功能,CWnd::OnDropFiles
- 使用AJAX实现文件拖拽上传功能详解
- 不仅拥有XmlDocument一样简单的XML操作方法,并且实现数据文件安全存储功能——XmlEDocument
- MFC中窗口实现拖拽文件功能
- 标注文件格式转换功能的简单实现
- C#实现外部图片的拖拽到应用程序的简单功能,附全部源码,供有需要的参考
- 可拖拽悬浮窗、对话框悬浮窗的简单实现
- Servlet简单实现文件上传功能
- MFC单文档实现文件拖拽功能
- VC++文件拖拽功能实现drag
- C#实现树型结构TreeView节点拖拽的简单功能(转)
- Java实现拖拽文件上传dropzone.js的简单使用示例代码
- (98)Menu简单文本编辑器实现功能:文件打开,保存,退出