答案 0 :(得分:1)
Java的DnD支持确实允许您将Java应用程序中的内容拖到本地应用程序中,但我认为它仅限于文本,并且只有目标组件可以接受文本,例如浏览器中的地址栏。
如果资源管理器地址栏不接受拖放中的文本,您可以随时向应用程序添加一个菜单选项,以“在资源管理器中打开”,该选项仅以文件路径作为参数启动新的资源管理器进程。 / p>
答案 1 :(得分:0)
将此作为您的Transferable使用,您应该是金色的!
public class FileList extends Vector<File> implements Transferable {
final static int FILE = 0;
DataFlavor flavors[] = {DataFlavor.javaFileListFlavor};
public FileList(File file) {addElement(file);}
public synchronized DataFlavor[] getTransferDataFlavors() {return flavors;}
public boolean isDataFlavorSupported(DataFlavor flavor) {
return flavor.equals(flavors[FILE]);
}
public synchronized Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException, IOException {
if (flavor.equals(flavors[FILE])) return this;
else throw new UnsupportedFlavorException(flavor);
}
}