Mostrar elementos en un Jlist al presionar un item de un Jcombobox

Iniciado por danndres, 22 Marzo 2015, 08:15 AM

0 Miembros y 1 Visitante están viendo este tema.

danndres

Que tal amigos, necesito su ayuda, al momento de clickear sobre un item de un jcmbobox necesito que un JList muestre informacion del item seleccionado, el problema es como obtener el item seleccionado:

Código (java) [Seleccionar]
if (comboBoxCat.getSelectedItem().equals("Zapatos")){//esta condicion no me genera
//el siguiente codigo
   DefaultListModel modelocat = new DefaultListModel();

           for (int i = 0; i < categorias.size(); i++) {
               modelocat.addElement(categorias.get(i));
           }
           mostrarCat.setModel(modelocat);//mostrar zapatos
}



No importa tanto el crear la el model, lo que me interesa es poder obtener el item seleccionado y si este es igual a "cosa", generar el codigo que le sigue...


Espero su ayuda gracias




[MOD]:

1. No hagas doble post y menos para¿mostrar un emoticonoc y ya está?.
2. Utiliza las etiquetas GeShi para insertar un bloque de código.
3. No utilices etiquetas en el título del post, de nada sirven.
4. PORFAVOR, LEE LAS NORMAS DLE FORO Y DEL FORO DE PROGRAMACIÓN para que no se vuelvan a repetir dichas infracciones.

Saludos

Usuario Invitado

#1
Puedes obtener el objeto que desencadenó el evento. Así mismo, como JComboBox y JList hacen uso de Generics para indicar qué tipo de elemento (Clase) debe contener, puedes obtener los objetos que has guardado en ellos.

Suponiendo que tienes un JComboBox y un JList declarados así:

Código (java) [Seleccionar]
JComboBox<Product> cboProducts = new JComboBox<>();
JList<Product> productList = new JList<>();


Puedes obtener el Producto seleccionado del JComboBox y ponerlo en el JList así:

Código (java) [Seleccionar]
cboProducts.addItemListener(new ItemListener() {
   @Override
   public void itemStateChange(ItemEvent e) {
       Product product = (Product) evt.getItem();
       productList.addElement(product.toString());
   }
});



Eso te entendí. Si entendí mal, me explicas mejor.

Un saludo.
"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein