//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);
}
}
}