Personal tools
You are here: Home Development Documents gvSIG desktop 1.0 / 1.1 Otras librerias UI Components ControlesBasicos JOptionsEditionByMousePopupMenu
Document Actions

JOptionsEditionByMousePopupMenu

by Eustaquio Vercher last modified 2010-06-01 22:47

Esta clase crea un menú PopUp con opciones de edición de texto.

Esta clase crea un menú PopUp para poder incorporarlo a elementos de edición de texto como es JTextField por ejemplo. El menú que se crea posee los siguientes botones:
 
*  edit undo
 
*  edit redo
 
*  edit cut
 
*  edit copy
 
*  edit paste
 
*  edit delete
 
*  edit selectall

Se incorpora herramientas para modificar la visisbilidad de las diferentes acciones que se pueden realizar desde el PopUp según desee el usuario.

La clase deja en manos del desarrollador la implentación de las acciones que realizarán los distintos botones del PopUp, así como la acción que lo activará (normalmente al pulsar el botón derecho del ratón sobre un campo de edición de texto).

A continuación se muestra una imagen del menú PopUp que se crea utilizando esta clase.

.. figure:: imagenes/JOptionsEditionByMousePopupMenu1.JPG
   :align: center	

El código necesario para utilizar la clase es el siguiente. Se observa el constructor y el evento necesario para que aparezca el menú cuando se pulsa el tercer botón del ratón

.. code-block:: java

  MouseAdapter editorMouseListener = new MouseAdapter() {
			
		       public void mouseClicked(MouseEvent e) {
				
				JOptionsEditionByMousePopupMenu panel= new JOptionsEditionByMousePopupMenu();
				Logger logger = Logger.getLogger(JTextField.class.getClass());
				logger.debug("MOUSE-LISTENER : MOUSE-mouseClicked!" + e.getButton());
				logger.debug("MOUSE-LISTENER : MOUSE-mouseClicked!" +e.isPopupTrigger());
				
				if (e.getButton() == MouseEvent.BUTTON3) {
	            	               // Enable the "Select-All" option (by default it's always enabled)
	            	               panel.setEnabledSelectAllOption(true);
	            	               panel.setLocation((int)text.getLocationOnScreen().getX() + e.getX(), (int)text.getLocationOnScreen().getY() + e.getY());
	            	               panel.setInvoker(text);
	            	               panel.setVisible(true);
	            
	                         }
	               }
  };

  

View source document


Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: