Herramientas Personales
Acciones de Documento

ComboButton

por Victor AcevedoÚltima modificación 01/06/2010 22:52

ComboBox desplegable en el que los items que lo forman son botones capaces de realizar acciones.

Esta clase extiende de JPanel. El objetivo de esta clase es implementar una herramienta que permita desplegar un ComboBox y que los items que aparezacan sean botones capaces de realizar acciones que previamente se les haya asignado. Una vez pulsado el botón deseado se mostrará en el ComboButton la imágen asociada a ese botón (si ha sido asociado por el desarrollador) o el texto informativo de la acción que implenta el botón.

En la siguientes imágenes se muestra un ejemplo de la utilización de esta clase.

imagenes/ComboButton1.JPG

Aparece el estado inicial del ComboButton del ejemplo.

imagenes/ComboButton2.JPG

Aparece el ComboButton desplegado.

imagenes/ComboButton3.JPG

Se muestra el ComboButton con el estado cambiado.

A continuación se incluyen el código explicativo de como utilizar esta clase.

El constructor

ComboButton cb=new ComboButton();

Se crean dos iconos para mostrar con los botones del ComboButton

ImageIcon icon1=new ImageIcon("images/backward.png");
ImageIcon icon2=new ImageIcon("images/forward.png");

Los constructores de los dos botones que incluye el ComboButton. A los constructores se les llama con los iconos creados

JButton b1=new JButton(icon1);
JButton b2=new JButton(icon2);

Las acciones que realizarán los botones cuando sean pulsados

b1.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent arg0) {
              System.out.println("Pulsando el botón 1");
              System.out.println("Action command: "+arg0.getActionCommand());
              }
      }
);
b1.setActionCommand("action1");

b2.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent arg0) {
              System.out.println("Pulsando el botón 2");
              System.out.println("Action command: "+arg0.getActionCommand());
              }
      }
);
b2.setActionCommand("action2");

Hecho con Plone CMS, el Sistema de Gestión de Contenidos de Fuentes Abiertos

Este sitio cumple con los siguientes estándares: