HOY_ReadClipApp.java



//EJEMPLO DE LA LECTURA DEL PORTAPAPELES
import java.awt.*;
import java.awt.event.*;
import java.awt.datatransfer.*;

public class ReadClipApp extends Frame {
 TextArea textArea = new TextArea();
 Toolkit toolkit;
 int screenWidth = 500;
 int screenHeight = 500;
 public static void main(String args[]){
  ReadClipApp app = new ReadClipApp();
 }
 public ReadClipApp() {
  super("ReadClipApp");
  setup();
  setSize(screenWidth,screenHeight);
  addWindowListener(new WindowEventHandler());
  setVisible(true);
 }
 void setup() {
  setupMenuBar();
  toolkit=getToolkit();
  add("Center",textArea);
 }
 void setupMenuBar() {
  MenuBar menuBar = new MenuBar();
  Menu fileMenu = new Menu("Archivo");
  Menu readMenu = new Menu("Leer");
  MenuItem fileExit = new MenuItem("Salir");
  MenuItem readClipboard = new MenuItem("Portapapeles");
  fileExit.addActionListener(new MenuItemHandler()); 
  readClipboard.addActionListener(new MenuItemHandler()); 
  fileMenu.add(fileExit);
  readMenu.add(readClipboard);
  menuBar.add(fileMenu);
  menuBar.add(readMenu);
  setMenuBar(menuBar);
 }
 class MenuItemHandler implements ActionListener {
  public void actionPerformed(ActionEvent ev){
   String s=ev.getActionCommand();
   if(s=="Salir"){
    System.exit(0);
   }else if(s=="Portapapeles"){
    Clipboard clip=toolkit.getSystemClipboard();
    String text="Object Name: ";
    text+=clip.getName();
    text+="\n\nData Flavors:";
    Transferable contents=clip.getContents(ReadClipApp.this);
    if(contents==null) text+="\n\nPortapapeles vacio.";
    else{
     DataFlavor flavors[]=contents.getTransferDataFlavors();
     for(int i=0;i<flavors.length;++i){
      text+="\n\n Name: "+flavors[i].getHumanPresentableName();
      text+="\n MIME Type: "+flavors[i].getMimeType();
      text+="\n Class: ";
      Class cl = flavors[i].getRepresentationClass();
      if(cl==null) text+="null";
      else text+=cl.getName();
     }
    }
    textArea.setText(text);
   }
  }
 }
 class WindowEventHandler extends WindowAdapter {
  public void windowClosing(WindowEvent e){
   System.exit(0);
  }
 }
}