怎么实现将拖拽的文件让接受拖放文件打开呢
如何实现将拖拽的文件让接受拖放文件打开呢?
如何实现将拖拽的文件让接受拖放文件打开呢?
就相当于打开一个看图软件, 然后我用鼠标拖拽一张图片拖放到看图软件上。看图软件就能自动打开。 这是如何实现的呢?
------解决思路----------------------
// drag from explorer, not from tree !
void CMyAnimateCtrl::OnDropFiles(HDROP hDrop)
{
// Get number of files dropped
CString Path;
char szAviPath[260];
UINT nDropped;
nDropped = DragQueryFile(hDrop,0xFFFFFFFF,NULL,0);
if (nDropped==1)
{
DragQueryFile(hDrop, 0, szAviPath, 260);
DragFinish(hDrop); /* Delete structure alocated */
Path=szAviPath;
Path.MakeUpper();
if(Path.Right(4) != ".AVI" )
{
AfxMessageBox("Please choose a avi file!");
return;
}
ChangeAvi(Path);
}
}
//
BOOL CMyAnimateCtrl::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default
static BOOL Done=FALSE;
if(!Done)
{
Done=TRUE;
DragAcceptFiles(TRUE);
}
....
// h
class CMyAnimateCtrl : public CAnimateCtrl
afx_msg void OnDropFiles(HDROP hDrop);
------解决思路----------------------
"看图软件打开它"
发送 open file 命令
------解决思路----------------------
lz觉得main函数的参数是干嘛用的.
------解决思路----------------------
发一个 那个程序 使用的 菜单 Open 命令 , 或者 快捷键
------解决思路----------------------
"让程序模拟拖拽一张图片到看图软件上这一过程。"
还是不明白, 看图软件 如果 能 Drop ,那 你就可以 Drag
------解决思路----------------------
5楼正解
把这程序编译连接成exe程序后,随便拖个文件给它, 就能显示拖过来的文件的路径, MFC里, main函数被屏蔽了, 不过可以通过其他方法读到命令行参数, 网上一搜就有
如何实现将拖拽的文件让接受拖放文件打开呢?
就相当于打开一个看图软件, 然后我用鼠标拖拽一张图片拖放到看图软件上。看图软件就能自动打开。 这是如何实现的呢?
------解决思路----------------------
// drag from explorer, not from tree !
void CMyAnimateCtrl::OnDropFiles(HDROP hDrop)
{
// Get number of files dropped
CString Path;
char szAviPath[260];
UINT nDropped;
nDropped = DragQueryFile(hDrop,0xFFFFFFFF,NULL,0);
if (nDropped==1)
{
DragQueryFile(hDrop, 0, szAviPath, 260);
DragFinish(hDrop); /* Delete structure alocated */
Path=szAviPath;
Path.MakeUpper();
if(Path.Right(4) != ".AVI" )
{
AfxMessageBox("Please choose a avi file!");
return;
}
ChangeAvi(Path);
}
}
//
BOOL CMyAnimateCtrl::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default
static BOOL Done=FALSE;
if(!Done)
{
Done=TRUE;
DragAcceptFiles(TRUE);
}
....
// h
class CMyAnimateCtrl : public CAnimateCtrl
afx_msg void OnDropFiles(HDROP hDrop);
------解决思路----------------------
"看图软件打开它"
发送 open file 命令
------解决思路----------------------
lz觉得main函数的参数是干嘛用的.
------解决思路----------------------
发一个 那个程序 使用的 菜单 Open 命令 , 或者 快捷键
------解决思路----------------------
"让程序模拟拖拽一张图片到看图软件上这一过程。"
还是不明白, 看图软件 如果 能 Drop ,那 你就可以 Drag
------解决思路----------------------
5楼正解
#include <stdio.h>
int main(int c, char **arg)
{
if (c < 2) printf("no inputfile\n");
else printf("path = %s", arg[1]);
getchar();
return 0;
}
把这程序编译连接成exe程序后,随便拖个文件给它, 就能显示拖过来的文件的路径, MFC里, main函数被屏蔽了, 不过可以通过其他方法读到命令行参数, 网上一搜就有