Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Jcombobox dependientes leyendo desde un archivo txt

Tengo problemas para que dos combobox sean dependiente uno del otro. Los dos deben ser llenados desde un archivo txt. Ejemplo, si seleccionó AUTOBOTS en el primer combo, en el segundo deben aparecer OPTIMUS PRIME, BUMBLEBEE, BULKHEAD, ARCEE, IRONHIDE, RATCHET… si se seleccionó DECEPTICONS, en el segundo combo deben aparecer MEGATRON, SOUNDWAVE, STARSCREAM, BREAKDOWN…. Sugerencias?

julio 29, 2014 | Unregistered CommenterJo

Cada vez que selecciones un elemento de un combo, cambia el modelo del otro con los datos que precises.

http://docs.oracle.com/javase/7/docs/api/javax/swing/DefaultComboBoxModel.html

http://docs.oracle.com/javase/7/docs/api/javax/swing/JComboBox.html#setModel(javax.swing.ComboBoxModel)

julio 29, 2014 | Registered Commenterchoces

Algún ejemplo de como hacer eso? Te lo agradecería mucho

julio 29, 2014 | Unregistered CommenterJo

pues yo lo haría de la siguiente manera.

/* Tengo los Valores del comboBox dependiente, gjuardados en arreglos */
ejm: Object[] Autobots = new Object [10];
Autobots[0]="BUMBLEBEE";
Autobots[1]=.....


if (jcomboBox.getselectedItem()==AUTOBOTS ){
for(int i=0;i<=10;i++){
tuComboboxDependiente.addItem(Autobots[i]);
}
}

SI NO TE FUNCIONA LA CONDICION CON EL GETSEECTEDITEM, PROBARIA SACANDO ESE VALOR EN UNA VARIABLE STRING

String NombredelComboBox = (String) tucomboboxacomparar.getselectedItem();

ESPERO QUE TE SIRVA!!!

julio 29, 2014 | Unregistered CommenterBetoXrp

PDT: OLVIDE LAS COMILLAS EN LA CONDICION

if (jcomboBox.getselectedItem()=="AUTOBOTS" )

O SE PUEDE HACER ASI

String NombredelComboBox = (String) tucomboboxacomparar.getselectedItem();
if (NombredelComboBox =="AUTOBOTS" )

julio 29, 2014 | Unregistered CommenterBetoXrp

@Beto

Añadir elementos a un combo uno a uno no es la mejor solución porque, además de tener que construir un bucle, se dispara un evento cada vez que se añade.

Como se ve en el enlace que publiqué más arriba, basta con crear un modelo, y ejecutar un setModel, para añadirlos todos a la vez, con un único evento disparado.

@Jo
Aparte de las explicaciones que ya te he dado antes, y en este mismo post, no veo que más necesitas.
Publica el código que tengas hecho, y muestra las dificultades que tengas en el mismo código.

julio 29, 2014 | Registered Commenterchoces

¿Quizá lo que le falta es registrar un data listener en el modelo del primer JComboBox para actualizar el segundo cada vez que se seleccione un elemento diferente en el primero?

agosto 3, 2014 | Registered Commenterrickiees

No se sabe lo que le falta, porque no ha publicado nada de su código.
Me da la impresión de que solo busca "copiar y pegar" un código que funcione según la idea que tiene en su cabeza, sin molestarse ni en aprender ni en hacer nada.

agosto 3, 2014 | Registered Commenterchoces