Java 将节点(文件)从JTree拖动到操作系统桌面

Java 将节点(文件)从JTree拖动到操作系统桌面,java,swing,drag-and-drop,jtree,Java,Swing,Drag And Drop,Jtree,在JavaSwing中,如何在Swing中从Windows桌面的JTree中拖动(DnD)节点。节点是文件的抽象 当前,我可以使用以下命令让节点使用随机文件名将文件移动到我的Windows临时目录: dge.startDrag(DragSource.DefaultCopyDrop, bufferedImage, new Point(0, 0), node, this); 但我希望桌面上的节点具有我选择的名称。“我的Windows桌面上的JTree中的节点”就是这个应用程序。只为你?OSX(我

在JavaSwing中,如何在Swing中从Windows桌面的JTree中拖动(DnD)节点。节点是文件的抽象

当前,我可以使用以下命令让节点使用随机文件名将文件移动到我的Windows临时目录:

dge.startDrag(DragSource.DefaultCopyDrop, bufferedImage, new Point(0, 0), node,  this);

但我希望桌面上的节点具有我选择的名称。

“我的Windows桌面上的JTree中的节点”就是这个应用程序。只为你?OSX(我认为它不支持将东西拖到主屏幕)或*nix(不确定“桌面”的状态)的用户呢?你需要先看看。复杂的问题是要弄清楚操作系统将接受什么
dataflavor
作为导出。它可能至少会接受来自基于文件的mime类型的
输入流
,可能是
应用程序/octet流
,你也可以尝试
text/plain
,这取决于它是hank you@MadProgrammer的文件类型——我有两个问题:1)文件实际上存储在云中,因此想法是DnD首先必须异步触发下载,并在应用程序中连接进度条。我可以让这一切都运作起来。。。但我不知道如何识别目标放置站点的路径,以便在下载完成时将文件正确移动到放置站点位置?“但我不知道如何识别目标放置站点的路径,以便在下载完成时将文件正确移动到放置站点位置?”您不知道,目标将请求获取有关您正在导出的内容的信息的方法