JavaFX - Outlook 附件 - DnD

标签 java javafx drag-and-drop outlook javafx-8

您好,我需要一个 DnD 解决方案来将 Outlook 邮件附件拖到 Stackpane。

JavaFX/展望 2010

    stackpaneDragAndDropZone.setOnDragOver((DragEvent event) -> {
        Dragboard db = event.getDragboard();
        System.out.println(db.getContentTypes());
    });

有这样的输出:

[[message/external-body;access-type=clipboard;index=0;name="faxdoc-150217-1300-+49-206581978.pdf"], [RenPrivateItem]]

我如何使用这个 RenPrivateItem?

在常规 Java 上,我得到了一个包含以下代码的文件:

    dropTarget.addDropTargetListener(new DropTargetAdapter() {
        public void drop(DropTargetDropEvent dtde) {
            Transferable t = dtde.getTransferable();

            try {
                DataFlavor[] dataFlavors = t.getTransferDataFlavors();

                dtde.acceptDrop(DnDConstants.ACTION_COPY);

                //create a temp file
                File temp = File.createTempFile("temp-file-name", ".tmp");

                for (int i = 0; i < dataFlavors.length; i++) {
                    File file = new File(t.getTransferData(dataFlavors[i]).toString().replace("[", "").replace("]", ""));
                    Desktop.getDesktop().open(new File(file.getCanonicalPath()));
                }

                dtde.dropComplete(true);

            } catch (Exception ex) {

                ex.printStackTrace();

            }

        }

    });

最佳答案

顾名思义,它是一种私有(private)格式。但是您将获得 CF_FILEDESCRIPTOR 和 CF_FILECONTENTS 格式。

关于JavaFX - Outlook 附件 - DnD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28562885/

相关文章:

java - Android 设备针对 Spring Security Rest API 的身份验证

java - 在 TreeTableView 中选择子项时还要选择父项直至根

JavaFX 8 : how to add a timedelay to a listener?

angular - 防止 MatDialog 被拖出窗口

java - 构造一个二维数组并赋值

java - 从 Android 中的时间戳获取日期名称

GWT 可拖动的 CellTable 单元格

java - 如何知道我的手指在哪里、在哪个布局上?

java - 在 java 中处理 ArrayList 中的相等性

Javafx CSS 解析错误