Foros del Web » Programación para mayores de 30 ;) » Java »

Programar evento de un JComboBox en JAVA??

Estas en el tema de Programar evento de un JComboBox en JAVA?? en el foro de Java en Foros del Web. Hola a tod@s. Necesito saber como programar un evento para un elemento JComboBox. Sé programar eventos para los botones (JButton) , es decir, si se ...
  #1 (permalink)  
Antiguo 16/05/2010, 11:16
 
Fecha de Ingreso: mayo-2010
Mensajes: 32
Antigüedad: 14 años, 7 meses
Puntos: 0
Pregunta Programar evento de un JComboBox en JAVA??

Hola a tod@s. Necesito saber como programar un evento para un elemento JComboBox. Sé programar eventos para los botones (JButton) , es decir, si se pulsa un botón determinado que abra una ventana determinada o cualquier otra cosa, pero para un JComboBox no sé hacerlo. En el JComboBox tengo tres opciones:

-Usuario Administrador

-Usuario Profesor

-Usuario Alumno

Me gustaria que, simplemente, al pinchar en "Usuario Administrador" del desplegable JComboBox, se abriera una nueva ventana o cualquier otra cosa.

Con los JButton simplemente sé que hay que hacer esto:

Código PHP:
//Creamos el JButton con el texto que va a contener el botón
JButton nuevo_bt = new JButton("Guardar nuevo usuario");

//Le asignamos al JButton un comando para identificarlo en el escuchador (ActionListener)
nuevo_bt.setActionCommand("GUARDAR");

//Añadimos el boton a la ventana
this.add(nuevo_bt);

//Decimos en qué posicion colocamos el boton en la ventana
nuevo_bt.setBounds(10020020040);

//Creamos un objeto de la clase GestionBotonUsuarioNuevo (a la que nosotros hemos hecho que implemente la clase ActionListener), es decir, creamos un escuchador de eventos
GestionBotonUsuarioNuevo guardar = new GestionBotonUsuarioNuevo (this);

//Usamos el metodo de la clase GestionBotonUsuarioNuevo y le pasamos el objeto "guardar"
nuevo_bt.addActionListener(guardar);




En la clase GestionBotonUsuarioNuevo tendremos este método:

public 
void actionPerformed(ActionEvent e) {

//Si "GUARDAR" es el comando que le pasamos es porque se habrá pulsado el botón nuevo_bt
if ("GUARDAR".equals(e.getActionCommand())){
//Hacemos lo que queremos hacer
}


Espero haberme explicado.

Gracias

Un saludo.
  #2 (permalink)  
Antiguo 17/05/2010, 04:58
 
Fecha de Ingreso: mayo-2010
Mensajes: 19
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Programar evento de un JComboBox en JAVA??

Bueno aqui te dejo un pequeño ejemplo espero que te sirva...

Código PHP:
import java.awt.GridBagLayout;
import javax.swing.JPanel;
import javax.swing.JComboBox;

import java.awt.GridBagConstraints;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

public class 
Prueba extends JPanel {

    private static final 
long serialVersionUID 1L;
    private 
JComboBox jComboBox null;

    
/**
     * This is the default constructor
     */
    
public Prueba() {
        
super();
        
initialize();
    }

    
/**
     * This method initializes this
     * 
     * @return void
     */
    
private void initialize() {
        
GridBagConstraints gridBagConstraints = new GridBagConstraints();
        
gridBagConstraints.fill GridBagConstraints.VERTICAL;
        
gridBagConstraints.gridy 0;
        
gridBagConstraints.weightx 1.0;
        
gridBagConstraints.gridx 0;
        
this.setSize(300200);
        
this.setLayout(new GridBagLayout());
        
this.add(getJComboBox(), gridBagConstraints);
        
        
jComboBox.addItem("France"); 
        
jComboBox.addItem("Germany"); 
        
jComboBox.addItem("Italy"); 
        
jComboBox.addItem("Japan"); 
        
        
addActions();
    }

    
/**
     * This method initializes jComboBox    
     *     
     * @return javax.swing.JComboBox    
     */
    
private JComboBox getJComboBox() {
        if (
jComboBox == null) {
            
jComboBox = new JComboBox();
        }
        return 
jComboBox;
    }
    
    public 
void addActions()
    {
        
/*
         * ######################################
         *         ACCION DEL JCOMBOBOX
         * ######################################
         */
        
final ItemListener changeClick = new ItemListener()
        {
            public 
void itemStateChanged(ItemEvent e
            {
                if(
jComboBox.getSelectedItem().equals(e.getItem()))
                {
                    
System.out.println("Hola "+e.getItem().toString());
                }
            }
        };
        
        
this.jComboBox.addItemListener(changeClick);
    }



Etiquetas: jcombobox, programación, eventos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:14.