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

Rellenar un ComboBox netbeans

Estas en el tema de Rellenar un ComboBox netbeans en el foro de Java en Foros del Web. Mi duda es como guardo los campos de una busqueda en un ComboBox. tengo una tabla con varias columnas; colum1 colum2. Como logro que la ...
  #1 (permalink)  
Antiguo 27/05/2011, 22:22
 
Fecha de Ingreso: mayo-2011
Mensajes: 1
Antigüedad: 12 años, 10 meses
Puntos: 3
Rellenar un ComboBox netbeans

Mi duda es como guardo los campos de una busqueda en un ComboBox.
tengo una tabla con varias columnas; colum1 colum2.
Como logro que la busqueda que hice de colum1 se guarde en un ComboBox en Colum2

Mas o menos el proyecto es asi Colum 1 guarda el nombre del Autor de un libro este puede repetirse y colum2 guarda los titulos entonces en base a una busqueda de autor que muestre en colum2 todos los titulos existentes despues de hay una nueva busqueda que muestre detalles (De eso m encargo yo). yo solo deseo guardar los resultoados que obtuve del autor(Colum1) en los titulos (Colum2).

Espero y me haya explicado por cierto la orden con la que hago la busqueda en java es:

Código Javascript:
Ver original
  1. "SELECT Autor, libro  FROM  tabla where Autor = "Cadena"

Gracias
  #2 (permalink)  
Antiguo 01/06/2011, 16:32
Avatar de valdo_kof  
Fecha de Ingreso: noviembre-2009
Ubicación: San Juan del Rio, Qro
Mensajes: 192
Antigüedad: 14 años, 5 meses
Puntos: 16
Respuesta: Rellenar un ComboBox netbeans

lo que necesitas es un combo dependiente, te dejo el ejemplo que realice para estados y municipios que es lo mismo que tu necesitas

estados=autores
municipios=titulos

tambien dividir tu tabla has una de autores y otra de titulo algo como esto

autor
id_autor
nombre_autor

titulo
id_titulo
titulo
id_autor

y creas una clave foranea en titulo y listo es mas facil asi y mas funcional

aqui esta el ejemplo

primero si usas netbeans crea un nuevo frame y coloca dos jComboBox y uno lo inicialisas como disabled o enabled=false;

luego cuando inicialisas tu clase pones esto

Código Java:
Ver original 

en tu constructor pones esto

Código Java:
Ver original
  1. llenar_est();

y creas dos clases

Código Java:
Ver original
  1. public void llenar_est() {
  2.         try {
  3.             Class.forName("com.mysql.jdbc.Driver");
  4.             conexion = (Connection) DriverManager.getConnection("jdbc:mysql://localhost/tabla", "root", "");
  5.             st = (Statement) conexion.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
  6.             rs = st.executeQuery("SELECT * FROM est");
  7.             modeloCombo.addElement("Seleccione un Estado");
  8.             jComboBox1.setModel(modeloCombo);
  9.             while (rs.next()) {
  10.                 modeloCombo.addElement(rs.getObject("est"));
  11.                 jComboBox1.setModel(modeloCombo);
  12.             }
  13.  
  14.             st.close();
  15.         } catch (SQLException ex) {
  16.             Logger.getLogger(frame1.class.getName()).log(Level.SEVERE, null, ex);
  17.         } catch (ClassNotFoundException ex) {
  18.             Logger.getLogger(frame1.class.getName()).log(Level.SEVERE, null, ex);
  19.         }
  20.     }
  21. public void llenar_muni(String est){
  22.     jComboBox2.enable(true);
  23.     jComboBox2.removeAllItems();
  24.  try {
  25.             Class.forName("com.mysql.jdbc.Driver");
  26.             conexion = (Connection) DriverManager.getConnection("jdbc:mysql://localhost/tabla", "root", "");
  27.             st = (Statement) conexion.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
  28.             rs = st.executeQuery("SELECT * FROM muni,est where muni.id_est=est.id_est and est='"+est+"'");
  29.             modeloCombo2.addElement("Seleccione un Municipio");
  30.             jComboBox2.setModel(modeloCombo2);
  31.             while (rs.next()) {
  32.                 modeloCombo2.addElement(rs.getObject("muni"));
  33.                 jComboBox2.setModel(modeloCombo2);
  34.             }
  35.  
  36.             st.close();
  37.         } catch (SQLException ex) {
  38.             Logger.getLogger(frame1.class.getName()).log(Level.SEVERE, null, ex);
  39.         } catch (ClassNotFoundException ex) {
  40.             Logger.getLogger(frame1.class.getName()).log(Level.SEVERE, null, ex);
  41.         }
  42. }


y listo eso es todo lo que se necesita para los combos dependientes

Última edición por valdo_kof; 01/06/2011 a las 16:37
  #3 (permalink)  
Antiguo 16/07/2011, 00:49
 
Fecha de Ingreso: mayo-2009
Mensajes: 3
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Rellenar un ComboBox netbeans

Disculpa, soy nuevo en esto y trato de aprender un poco de java en netbeans. Segui al pie de la letra tu ejemplo, porque necesito vincular dos jcombobox cargando los datos a partir de una base de datos hecha en sql server, pero no me salio, es decir, me carga el primer combobox pero al seleccionar el item no me llena el segundo combobox, no se si algo le falto a tu codigo, o yo escribi algo mal.....saludos, espero me puedas ayudar
  #4 (permalink)  
Antiguo 18/07/2011, 09:14
Avatar de valdo_kof  
Fecha de Ingreso: noviembre-2009
Ubicación: San Juan del Rio, Qro
Mensajes: 192
Antigüedad: 14 años, 5 meses
Puntos: 16
Respuesta: Rellenar un ComboBox netbeans

Cita:
Iniciado por omarocho Ver Mensaje
Disculpa, soy nuevo en esto y trato de aprender un poco de java en netbeans. Segui al pie de la letra tu ejemplo, porque necesito vincular dos jcombobox cargando los datos a partir de una base de datos hecha en sql server, pero no me salio, es decir, me carga el primer combobox pero al seleccionar el item no me llena el segundo combobox, no se si algo le falto a tu codigo, o yo escribi algo mal.....saludos, espero me puedas ayudar
una disculpa me falto poner ese codigo para que te funcione debes agregar un listener al combo "padre"(por asi decirlo)

esto va en el constructor

Código Java:
Ver original
  1. jComboBox1.addActionListener(new ActionListener() {
  2.    public void actionPerformed(ActionEvent arg) {
  3.     llenar_muni((String) jComboBox1.getSelectedItem());
  4.    }
  5.  
  6.   });

espero les sea de ayuda

Suerte!!!
  #5 (permalink)  
Antiguo 29/07/2011, 21:51
 
Fecha de Ingreso: julio-2011
Mensajes: 1
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Rellenar un ComboBox netbeans

hola, tu ejemplo me sirvio mucho pero al seleccionar en el primer combobox me sale un error.

Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.String

gracias.
  #6 (permalink)  
Antiguo 26/09/2011, 22:44
 
Fecha de Ingreso: mayo-2009
Mensajes: 3
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Rellenar un ComboBox netbeans

que tal wilmerd, lograste hacer lo del combobox?? porque yo aun tento problemas
  #7 (permalink)  
Antiguo 27/09/2011, 07:07
Avatar de valdo_kof  
Fecha de Ingreso: noviembre-2009
Ubicación: San Juan del Rio, Qro
Mensajes: 192
Antigüedad: 14 años, 5 meses
Puntos: 16
Respuesta: Rellenar un ComboBox netbeans

Cita:
Iniciado por wilmerd Ver Mensaje
hola, tu ejemplo me sirvio mucho pero al seleccionar en el primer combobox me sale un error.

Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.String

gracias.
Cita:
Iniciado por omarocho Ver Mensaje
que tal wilmerd, lograste hacer lo del combobox?? porque yo aun tento problemas
en vista de que creo que parece un poco complicado y por los errores que les ha de ocurrir aqui les dejo el ejemplo completo para que puedan abrirlo desde netbeans y correrlo o en su defecto al descomprimir el archivo viene una carpeta dist en el cual ya esta compilado el ejemplo para q puedan correrlo

este es el link del proyecto de netbeans

http://www.mediafire.com/?bt7va0v63zwss3z

y este es el query de la base de datos que ocupa simplemente debes de tener mysql instalado y seguir estos pasos

http://www.mediafire.com/?6pgk2kzmtmbt6h9

1.- abrir una pantalla de simbolos del sistema o msdos, pantalla de comandos o bien pulsa la tecla windows+r y escribe cmd.

2.- ve a esta ruta C:\Archivos de programa\MySQL\MySQL Server 5.1\bin en tu explorador de windows

3.- descarga el query de la base de datos y pegala en la ruta del paso dos.

4.-regresamos a la pantalla de simbolos del sistema y escribe cd C:\Archivos de programa\MySQL\MySQL Server 5.1\bin

5.- te va a aparecer algo como esto C:\Archivos de programa\MySQL\MySQL Server 5.1\bin> ahora escribe lo siguiente: mysql -p -u root < estados.sql

6.- te pedira tu password de mysql escribela, espera a que te aparesca de nuevo C:\Archivos de programa\MySQL\MySQL Server 5.1\bin> y listo ya tienes la base de datos cargada y lista para probar el ejemplo.

en esta ruta C:\Archivos de programa\MySQL\MySQL Server 5.1\bin

puede cambiar lo siguiente de acuerdo a du version de windows

Archivos de Programa X Programs and File

MySQL Server 5.1 X MySQL "version que tengan"

espero y ahora si queden mas claras sus dudas viendo el ejemplo y analizando el codigo

suerte!!!!
  #8 (permalink)  
Antiguo 10/07/2012, 15:16
 
Fecha de Ingreso: julio-2012
Mensajes: 2
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Rellenar un ComboBox netbeans

Unknown column 'tipoproducto' in 'where clause'


Me sale el error de arriba!
  #9 (permalink)  
Antiguo 10/07/2012, 15:21
 
Fecha de Ingreso: julio-2012
Mensajes: 2
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Rellenar un ComboBox netbeans

solucionado xD justo cuando postie lo de arriba, me funciono xD

Etiquetas: combobox, netbeans, rellenar
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

SíEste tema le ha gustado a 4 personas




La zona horaria es GMT -6. Ahora son las 08:44.