SIMULANDO EL PORTAPAPELES en JAVA
Simular el portapapeles de windows es una manera rápida y sencilla de intercambiar información entre distintos controles del applet o frame. Va asociado a las cajas de texto multilínea. Debemos utilizar el una variable para contener la información y los métodos que ya están implementados en java para realizar las operaciones con el portapapeles. Los métodos a utilizar se ocupan de seleccionar , copiar, insertar texto, etc… y son los siguientes:
SELECCIONAR TODO EL TEXTO:
objeto_TextArea.selectAll();
COPIAR TEXTO SELECCIONADO:
var_String=objeto_TextArea.getSelectedText();
CORTAR TEXTO SELECCIONADO:
var_String=objeto_TextArea.getSelectedText();
obj.replaceText(“”,obj.getSelectionStart(),
obj.getSelectionEnd());
SELECCIONAR PARTE DEL TEXTO: Con el ratón directamente.
LIMITES DE LA ZONA SELECCIONADA:
var_int=objeto_TextArea.getSelectionStart();
var_int=objeto_TextArea.getSelectionEnd();
PEGAR LO COPIADO O CORTADO: Ambas líneas son necesarias, por si hay un texto marcado y pegamos. Así elimina lo seleccionado y deja solo lo que se pega.
obj.replaceText(“”,obj.getSelectionStart(),
obj.getSelectionEnd());
obj.insertText(var_String,obj.getSelectionStart());
EJEMPLO:
import java.awt.*; import java.applet.*; public class porta extends Applet{ String temp=""; TextArea caja=new TextArea(""); Button copia=new Button("Copiar"); Button corta=new Button("Cortar"); Button pega=new Button("Pegar"); public void init(){ setLayout(null); add(caja); add(copia); add(corta); add(pega); caja.reshape(10,10,200,100); copia.reshape(10,110,60,40); corta.reshape(80,110,60,40); pega.reshape(150,110,60,40); } public boolean action(Event evt,Object obj){ if(evt.target instanceof Button) { if(obj.equals("Copiar")) temp=caja.getSelectedText(); if(obj.equals("Cortar")) { temp=caja.getSelectedText(); caja.replaceText("",caja.getSelectionStart(), caja.getSelectionEnd()); } if(obj.equals("Pegar")) { caja.replaceText("",caja.getSelectionStart(), caja.getSelectionEnd()); caja.insertText(temp,caja.getSelectionStart()); } return true; } return false; }//cierra el método action }//cierra la clase
0 comentarios