Java - combobox con bd

   
Vista:

combobox con bd

Publicado por Sara (7 intervenciones) el 07/04/2010 20:22:11
Hola, estoy dando vueltas a un tema y no se por donde cogerlo... a ver si alguien puede ayudarme.

el caso es que quiero sacar unos productos en un combobox (muy sencillo). Los productos los tengo en una base de datos al que accedo por una conexion Servidor/cliente.
Este es el codigo que tengo:

try{
ProduktuLista.INSTANTZIA.produktuakLortu();
Iterator<Produktua> it=ProduktuLista.INSTANTZIA.getProduktuLista().iterator();

do{

System.out.println("nombre" + it.next().getIzena());
jComboBoxProduktuak.addItem(it.next().getId_produktua());

}while(it.hasNext());
}catch(Exception e){
e.printStackTrace();
}

el caso es que si solo saco por pantalla con system.out y deshabilito el sdditem del combo, me aparecen en la casilla de contorl los 9 productos que tengo, estupendo!! pero si habilito lo del combobox me salen solo 4, los impares!! no se porque. Ademas de esto me da un error java.util.NoSuchElementException y me lleva directamente a la fila de jComboBoxProduktuak.additem...

He comprobado que el array en que se guardan los productos guarda bien los que le pasa la base de datos.

Espero que me puedan ayudar que me he atascado!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:combobox con bd

Publicado por Sara (7 intervenciones) el 07/04/2010 21:08:52
Hola de nuevo, he conseguido que me salga mas o menos, el caso es que al hacer it.next dos veces, me salta dos productos y el error me lo da porque solo salen 4. Lo que ahora pasa es que si quiero que me salga mas de un dato en la misma fila del combo o se como hacerlo, es decir, quiero que para cada producto se visualice id+nombre+tipo+tamaño por ejemplo

try{
ProduktuLista.INSTANTZIA.produktuakLortu();
Iterator<Produktua> it=ProduktuLista.INSTANTZIA.getProduktuLista().iterator();

do{

jComboBoxProduktuak.addItem(it.next().getId_produktua());

}while(it.hasNext());
}catch(Exception e){
e.printStackTrace();
}

si en el add le pongo + " " + it.next().getNombre()) me pasaria lo mismo que antes, me saltaria un producto por cada next.

Como puedo unirlos??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:uso correcto de iterator

Publicado por Javier Mariscal (94 intervenciones) el 09/04/2010 22:10:35
Hola lo que pasa es que cada vez que haces it.next() pasa al siguiente, lo que debes hacer es capturar it.next() en una variable tipo Produktua y luego usas esa variable para recuperar los datos asi:
java.util.Iterator iter = pers.iterator();

while(iter.hasNext()){
Produktua p = (Produktua) iter.next()
System.out.println("nombre" + pgetIzena());
jComboBoxProduktuak.addItem(p.getId_produktua());

}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar