首頁 >後端開發 >php教程 >java作業系統剪貼簿內容數據

java作業系統剪貼簿內容數據

WBOY
WBOY原創
2016-07-25 09:08:14952瀏覽
客戶有各種稀奇的需求,現要求在使用平台過程中複製過的內容保存並展示供使用人員參考
  1. package cn.net.ssd.common.format;
  2. import java.awt.Image;
  3. import java.awt.Toolkit; java.awt.datatransfer.Clipboard;
  4. import java.awt.datatransfer.DataFlavor;
  5. import java.awt.datatransfer.StringSelection;
  6. import java.awt.datatransfer.Transferable;
  7. import java. awt.datatransfer.UnsupportedFlavorException;
  8. import java.io.IOException;
  9. public class ClipboradOperate {
  10. /**@Description:
  11. * @author zhk
  12. * @createtime 2012-7-12 上午11:33:06
  13. * @param args
  14. */
  15. public Stringstatoid main( {
  16. Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();//取得系統剪貼簿
  17. try {
  18. ImageViewer im=new ImageViewer(getImageFromClipboard(); // TODO Auto-generated catch block
  19. e.printStackTrace();
  20. }
  21. }
  22. /**
  23. * 從指定的剪切板中取得文字內容
  24. * 本機剪切板使用Clipborad cp = new Clipboard("clip1"); 來建構
  25. * 系統剪切板使用Clipboard sysc = Toolkit. getDefaultToolkit().getSystemClipboard();
  26. * 剪切板的內容getContents(null); 回傳Transferable
  27. */
  28. protected staticic String getClipboardText() throws Exception{
  29. Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();//取得系統剪貼簿
  30. // 取得剪貼簿中的內容
  31. Transferable clipcent = clip.Contlipkents( null);
  32. if (clipT != null) {
  33. // 檢查內容是否為文字類型
  34. if (clipT.isDataFlavorSupported(DataFlavor.stringFlavor))
  35. return (String)clipT.getferData( DataFlavor.stringFlavor);
  36. }
  37. return null;
  38. }
  39. //往剪切板寫文字資料
  40. protected static void setClipboardText(Clipboard clip, String writeMelip, String writeMe) {
  41. Transferable tText = new StringSelection(writeMe);
  42. clip.setContents(tText, null);
  43. }
  44. // 從剪切板中讀取圖片
  45. public static Image getImageFromClipclipage( ) throws Exception{
  46. Clipboard sysc = Toolkit.getDefaultToolkit().getSystemClipboard();
  47. Transferable cc = sysc.getContents(null);
  48. if (cc == null)
  49. 🎜> else if(cc.isDataFlavorSupported(DataFlavor.imageFlavor))
  50. return (Image)cc.getTransferData(DataFlavor.imageFlavor);
  51. return null;
  52. } protected static void setClipboardImage2(final Image image) {
  53. Transferable trans = new Transferable(){
  54. public DataFlavor[] getTransferFlavors(>
  55. public DataFlavor[] getTransferFlavors(>
  56. public DataFlavor[] getTransferFlavors( imageFlavor };
  57. }
  58. public boolean isDataFlavorSupported(DataFlavor flavor) {
  59. return DataFlavor.imageFlavor.equals(flavor);
  60. return DataFlavor.imageFlavor.equals(flavor);
  61. return DataFlavor.imageFlavor.equals(flavor);
  62. ) throws UnsupportedFlavorException, IOException {
  63. if(isDataFlavorSupported(flavor))
  64. return image;
  65. throw new UnsupportedFlavorException(flavor);
  66. throw new UnsupportedFlavorException(flavor); }
  67. }
  68. 複製代碼
    1. package cn.net.ssd.common.format;
    2. /*
    3. * 看圖形的視窗
    4. */
    5. import java. awt.Frame;
    6. 導入java.awt.Graphics;
    7. 導入java.awt.Image;
    8. 導入java.awt.MediaTracker;
    9. 導入java.awt.Toolkit;
    10. 導入java. awt.event.WindowAdapter;
    11. import java.awt.event.WindowEvent;
    12. /**
    13. * 用來顯示圖形的視窗
    14. */
    15. public class ImageViewer extends Frame {
    16. private Image image; /* *
    17. * 顯示一個影像
    18. * @param viewMe
    19. */
    20. public ImageViewer(Image viewMe) {
    21. image = viewMe;
    22. MediaTracker mediaTracker = new MediaTracker(this);
    23. mediaTracker.addImage(); mediaTracker.waitForID(0);
    24. } catch (InterruptedException ie) {
    25. ie.printStackTrace();
    26. System.exit(1);
    27. }
    28. addWindowListener( new WindowAdapter() {
    29. public void windowClosing(WindowEvent e) {
    30. System.exit(0);
    31. }
    32. });
    33. //視窗適應圖片大小
    34. setSize( image.getWidth(null), image.getHeight(null));
    35. //視窗標題
    36. setTitle("查看剪貼簿中的圖片");
    37. setVisible(true);
    38. }
    39. public void Paint(Graphics Graphics) {
    40. graphics.drawImage(image, 0, 0, null);
    41. }
    42. /**
    43. * 用於讀取影像檔案並產生Image物件
    44. */
    45. public static Image getImageFrom🎜> public static Image getImageFrom🎜> public static Image getImageFrom🔜> fileName) {
    46. Toolkit toolkit = Toolkit.getDefaultToolkit();
    47. Image image = toolkit.getImage(fileName);
    48. return image;
    49. }
    50. }
    51. return image;
    52. }
    }
    >複製程式碼
    java作業系統剪貼簿內容數據

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:水壺下一篇:水壺