狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频

當前位置:系統之家 > 技術開發教程 > 詳細頁面

如何在Java應用程序中完成copy圖像技巧

如何在Java應用程序中完成copy圖像技巧

更新時間:2024-04-12 文章作者:未知 信息來源:網絡 閱讀次數:

用Java開發圖形應用程序的朋友一定遇到過如何在程序中實現復制圖像的功能。在jdk1.4以前,java本身就支持將程序中文字串復制給其它的非java應用程序使用,而將程序中的圖像復制到非java應用程序簡直難上加難。只到jdk1.4出來,這個問題才得以解決。



一般我們開發java application界面,主要用swing圖形包。幾乎所有的swing控件都是由JComponent繼承而來的。如果我們要取得JComponent的圖像,可以用以下方式:



Rectangle rect = comp.getBounds();
BufferedImage bufImage = new BufferedImage(rect.width,
           rect.height,
           BufferedImage.TYPE_INT_RGB);
Graphics g = bufImage.getGraphics();
g.translate(-rect.x, -rect.y);
comp.paint(g);
這樣的話,圖像就保存到BufferedImage對象當中了。



現在來看如何將這個BufferedImage復制到系統clipboard中。要做復制功能,一般是繼承TransferHandler類,實現Transferable接口, 這樣你的復制內容才能傳到系統clipboard,為此我們來寫一個ImageSelection類:



/**
* <p>Copyright: Copyright (c) 2002</p>
* @author Turbo Chen
* @version 1.00
*/
import java.awt.*;
import java.awt.image.*;
import java.awt.datatransfer.*;
import javax.swing.*;



public class ImageSelection extends TransferHandler
       implements Transferable
{



  private static final DataFlavor flavors[] =
     {DataFlavor.imageFlavor};



  private Image image;



  public int getSourceActions(JComponent c) {
    return TransferHandler.COPY;
  }



  public boolean canImport(JComponent comp, DataFlavor
    flavor[]) {
    for (int i=0, n=flavor.length; i<n; i++) {
      if (flavor[i].equals(flavors[0])) {
        return true;
      }
    }
    return false;
  }



//將圖像復制到Image對象.



  public Transferable createTransferable(JComponent
    comp) {
    // Clear clip
    image = null;
    Icon icon = null;
Rectangle rect = comp.getBounds();
BufferedImage bufImage = new BufferedImage(rect.width,
           rect.height,
           BufferedImage.TYPE_INT_RGB);
Graphics g = bufImage.getGraphics();
  comp.paint(g);



    if (bufImage != null ) {
      image = bufImage;
      return this;
    }
    return null;
  }



  // Transferable
  public Object getTransferData(DataFlavor flavor) {
    if (isDataFlavorSupported(flavor)) {
      return image;
    }
    return null;
  }



  public DataFlavor[] getTransferDataFlavors() {
    return flavors;
  }



  public boolean isDataFlavorSupported(DataFlavor
    flavor) {
    return flavor.equals(flavors[0]);
  }
}




利用這個類,就可以輕松的將JComponent圖像復制到系統clipboard了.怎么使用呢,再來看看下面的代碼:



    final Clipboard clipboard =
      kit.getSystemClipboard();



    Icon icon = new ImageIcon("myphoto.jpg");
    final JLabel label = new JLabel(icon);
    label.setTransferHandler(new ImageSelection());



    JButton copy = new JButton("Label Copy");
    copy.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        TransferHandler handler =
          label.getTransferHandler();
        handler.exportToClipboard(label, clipboard,
          TransferHandler.COPY);
      }
    });




在你的程序中,要有一個JFrame, 加上一個JLabel,一個JButton,將上面的代碼加進入,你就可以在你的程序中看到圖像如何復制到系統clipboard了.

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频
欧美区日韩区| 韩国毛片一区二区三区| 色婷婷综合久久久中文一区二区| 欧美日韩在线播放一区二区| 91免费看片在线观看| 99久久久精品免费观看国产蜜| 国产99一区视频免费| 懂色av一区二区夜夜嗨| 成人一区在线看| 成人污视频在线观看| 99精品视频在线观看免费| 粉嫩av亚洲一区二区图片| 国产成a人无v码亚洲福利| www.色综合.com| 欧美区一区二| 国产情侣一区| 欧美优质美女网站| 欧美一区二区三区人| 久久精品视频免费| 1000精品久久久久久久久| 洋洋av久久久久久久一区| 日本麻豆一区二区三区视频| 狠狠色丁香婷综合久久| www.欧美亚洲| 妖精视频成人观看www| 久久九九精品| 日韩视频一区在线观看| 国产女同互慰高潮91漫画| 一二三区精品视频| 看电视剧不卡顿的网站| 99精品视频在线播放观看| 亚洲三级影院| 欧美亚洲国产怡红院影院| 欧美成人福利视频| 亚洲靠逼com| 久久99国内精品| 91丨porny丨国产入口| 国产伦精品一区二区三| 欧美一区日本一区韩国一区| 国产精品欧美一级免费| 日本不卡的三区四区五区| 成人性生交大片免费看视频在线 | 国产在线播放一区| 暖暖成人免费视频| 亚洲欧美视频| 精品国产乱子伦一区| 一区二区三区丝袜| 成人午夜av电影| 亚洲女同同性videoxma| 精品少妇一区二区三区日产乱码| 亚洲欧美激情在线| 国产麻豆9l精品三级站| 99亚洲视频| 精品久久五月天| 亚洲五码中文字幕| 99久久精品国产网站| 色婷婷综合激情| 日本一区二区动态图| 国内偷窥港台综合视频在线播放| 欧美日韩第一区| 欧美视频一区在线观看| 久久精品视频在线看| 久久 天天综合| 亚洲欧洲午夜| 久久久综合视频| 九九视频精品免费| 午夜在线视频观看日韩17c| 精品日韩一区二区三区免费视频| 亚洲一区二区三区视频在线播放| 成人午夜视频福利| 欧美在线播放高清精品| 洋洋成人永久网站入口| 亚洲欧美一级二级三级| 欧美精品丝袜久久久中文字幕| 亚洲综合在线电影| 亚洲欧美一区二区原创| 精品久久99ma| 国产一区二区三区四区五区入口 | 制服丝袜中文字幕亚洲| 亚洲v日本v欧美v久久精品| 国产精品二区在线| 精品国产一区二区在线观看| 麻豆成人免费电影| 91国内精品野花午夜精品| 日韩一区在线免费观看| 91美女在线观看| 精品国产精品网麻豆系列| 国产一区二区三区精品视频| 久久久久.com| 亚洲国产欧美日韩另类综合 | 国产欧美日产一区| heyzo一本久久综合| 日韩一级高清毛片| 精品写真视频在线观看| 日本精品免费观看高清观看| 亚洲综合色自拍一区| 中文亚洲字幕| 亚洲美女在线一区| 一区二区三区四区国产| 一区二区三区在线看| 国产欧美69| 亚洲一区免费视频| 亚洲一区二区三区四区中文| 亚洲精品美腿丝袜| 羞羞视频在线观看欧美| 日韩av中文字幕一区二区三区| 久久精品中文| 精品一区二区三区av| 欧美一区二区精品| 成人黄色软件下载| 亚洲国产成人午夜在线一区| 国产一在线精品一区在线观看| 国产精品青草综合久久久久99| 亚洲网友自拍| 亚洲最新在线观看| 91成人在线免费观看| 国产精品一二二区| 久久久精品一品道一区| 亚洲精品四区| 日韩avvvv在线播放| 91精品国产综合久久久蜜臀图片| 成人午夜激情影院| 国产精品久久久久aaaa| 亚洲在线电影| 国产一区91精品张津瑜| 久久色成人在线| 亚洲深夜激情| 国内精品视频一区二区三区八戒| 欧美电影免费观看高清完整版在 | 亚洲欧洲一区二区在线观看| 亚洲精品国产日韩| 久久精品一区二区三区中文字幕| 蜜桃视频在线一区| 2019国产精品| 狠狠色狠狠色综合日日tαg| 三级一区在线视频先锋| 欧美一区二区高清| 亚洲精一区二区三区| 久久国产精品一区二区| 久久久亚洲高清| 久久国产精品高清| 成人激情av网| 亚洲mv在线观看| ww久久中文字幕| 亚洲欧美精品在线观看| 成人精品在线视频观看| 一区二区国产视频| 欧美一区2区视频在线观看| 激情丁香综合| 丁香桃色午夜亚洲一区二区三区| 亚洲欧洲三级电影| 91精品国产品国语在线不卡| 亚洲经典在线看| 国产99一区视频免费| 亚洲国产精品人人做人人爽| 精品久久久三级丝袜| 久久婷婷亚洲| 欧美日韩精品一本二本三本| 久久精品免费观看| 亚洲六月丁香色婷婷综合久久 | 亚洲国产日韩一区二区| 欧美不卡视频一区| 在线精品亚洲一区二区不卡| 欧美精品1区| 国产成人免费视频一区| 日韩电影在线观看网站| 成人欧美一区二区三区白人| 欧美一区二区精品久久911| 性色一区二区三区| 精品999网站| 99在线热播精品免费| 老司机精品视频导航| 亚洲高清免费一级二级三级| 欧美国产乱子伦| 日韩精品一区二区三区swag | 日韩电影免费在线观看网站| 中文字幕一区二区三区视频| 精品日韩99亚洲| 88在线观看91蜜桃国自产| 久久精品亚洲一区二区| 99视频国产精品免费观看| 欧美日韩91| 91色在线porny| 国产成人精品午夜视频免费| 麻豆精品视频在线观看视频| 亚洲成人免费在线观看| 亚洲激情第一区| 亚洲日本在线天堂| 国产精品乱子久久久久| 国产无人区一区二区三区| 日韩欧美的一区二区| 欧美电影免费观看高清完整版在线 | 一本到一区二区三区| 国产精品嫩草99av在线| 99国产成+人+综合+亚洲欧美| 欧美精品免费观看二区| 欧美日本高清| 欧美午夜不卡| 激情综合自拍| 日韩一级欧洲|