public Image getClipboardImage() {
       //获得当前系统剪切板内容到Transferable(这是一个Java提供的剪切板数据包装对象)
       Transferable transferable = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);
       //当剪切板数据存在,并且类型为图片时
       if (transferable != null
         && transferable.isDataFlavorSupported(DataFlavor.imageFlavor)) {
         //转换数据为Image并返回
         try {
          return (Image) transferable
            .getTransferData(DataFlavor.imageFlavor);
         } catch (Exception e) {
          e.printStackTrace();
         }
       
       }
       return null;
      }

解决方案 »

  1.   

    java的clipboard主要两个对象,
    一曰Flavor,代表数据的格式,是简单的字符串,还是RichText(带格式的文本)、磁盘文件、图片还是其他什么。可以让应用程序选择是否接受或者以怎样的方式处置。比如,同样一段RichText,copy到记事本和copy到Word是两个效果。二曰Transferrable,也就是数据本身,getContents时Flavor参数不同,如上所述,得到的内容也可能不一样。