java - 自己的可转移不从外部应用程序返回任何 DataFlavor

标签 java clipboard copy-paste

我有两个应用程序:

1.我自己的图像浏览器。我想通过诸如复制粘贴之类的选项来操作图像。我为此创建了自己的 DataFlavor 类型。 (是的,我真的需要那个!)看起来像

DataFlavor supportedFlavor = new DataFlavor(app.my.ImageWrapper.class, "ImageWrapper class");

在我的Transferable中,我使用这个DataFlavor:

            @Override
        public boolean isDataFlavorSupported(DataFlavor flavor) {
            return supportedFlavor.equals(flavor);
        }

        @Override
        public DataFlavor[] getTransferDataFlavors() {
            return new DataFlavor[]{supportedFlavor}; // Simpled for SSCCE, I don't create new flavor each time really
        }

2. 来自 this 的 FlavorListener回答。它应该监听 FlavorEvents 来检测复制的数据类型。

我的问题是:

当我在复制文本、文件、图像后从其他应用程序获取事件时,DataFlavor 永远不会为空。但是如果我在复制我的对象后收到事件,它无法检测到任何 DataFlavor。为什么?

PS:抱歉我的英语不好。

最佳答案

谢谢大家,我已经找到答案了here查看相关部分后。这确实没有显示在搜索栏中,奇怪,因为这是第二次类似的情况......

关于java - 自己的可转移不从外部应用程序返回任何 DataFlavor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17658704/

相关文章:

java - 如何在 Java Web 应用程序中声明启动 Hook

java - 运行时常量池GC收集

c# - 如何使用 C# Word Interop 清除 MS Office 剪贴板

Linux - 编辑剪贴板内容的脚本

html - 禁用文本选择和复制

Java:使用正则表达式提取字符串中的不同数量的值

java - 如何使用 Hibernate Search/Lucene 根据列值对行进行索引?

javafx - TinyMCE从记事本(剪贴板)复制粘贴到java 1.8上的javafx WebView

android - 在android中清除剪贴板以防止复制粘贴的服务

excel - 将不同工作簿中的数据复制并粘贴到多个单元格