我可以从Swing获取文件路径到资源管理器

时间:2009-07-30 07:16:34

标签: java swing file

我看了 FileTreeDragSource

我可以从Swing获取文件路径到资源管理器。 不是探险家 - >摆动!!

Swing - >探险者 我想通过探险家获得路径

2 个答案:

答案 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);
        }
    }