Hola, gracias por responder pero que crees ya pude solucionar el problema, miren les dejo mi código por si alguien le sirve:
package combodinamico;
Code:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JOptionPane;
public class InterfazGUI extends javax.swing.JFrame {
Connection conn;
Statement sentencia;
ResultSet rs;
public InterfazGUI() {
initComponents();
this.setLocation(500, 300);
CargarCodigos();
//evento del combo que identifica cuando seleccionas un codigo
comboCodigo.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//cargamos el nombre del codigo seleccionado
cargarNombres(comboCodigo.getSelectedItem().toString());
}
});
}
public static void main(String args) {
new InterfazGUI().setVisible(true);
}
// Variables declaration - do not modify
private javax.swing.JComboBox comboCodigo;
private javax.swing.JComboBox comboNombre;
// End of variables declaration
private void CargarCodigos() {
conn = conexion.conectar(); //creamos la conexion a la base de datos con el metodo conectar
// de la clase conexion
try {
//inicializamos un sentencia, nos ayuda para ejecutar consultas
sentencia = conn.createStatement();
//ejecutamos una consulta y los guardamos en un resultset(es el resultado de la consulta)
rs = sentencia.executeQuery("select nombre_clientes from clientes");
//validamos que el resultset tenga datos
if (rs != null) {
//creamos un modelo que sera el que llene nuestro combo de codigos
DefaultComboBoxModel modeloCodigos = new DefaultComboBoxModel();
// recoremos el resulset, para extraer los datos
while (rs.next()) {
//agregamos elemento por elemento al modelo, con el elemneto extraido de la columna _id
//que es la columna 1 de tu tabla en la base de datos
modeloCodigos.addElement(rs.getString(1));
}
//asignamos al combo el modelo ya llenado
comboCodigo.setModel(modeloCodigos);
//cerramos la conexion para liberar memoria
conexion.cerrarConexion();
//mandamos llenar el combo con los nombres del primer elemento del combo del codigo
cargarNombres(comboCodigo.getSelectedItem().toString());
}
} catch (SQLException ex) {
Logger.getLogger(InterfazGUI.class.getName()).log(Level.SEVERE, null, ex);
}
}
private void cargarNombres(String codigo) {
conn = conexion.conectar(); //creamos la conexion a la base de datos con el metodo conectar
// de la clase conexion
try {
//inicializamos un sentencia, nos ayuda para ejecutar consultas
sentencia = conn.createStatement();
//ejecutamos una consulta, donde el codigo sea igual al seleccionado en el combo
rs = sentencia.executeQuery("select nombre_cedis from clientes where nombre_clientes = '" + codigo + "'");
//validamos que el resultset tenga datos
if (rs != null) {
//creamos un modelo que sera el que llene nuestro combo de codigos
DefaultComboBoxModel modeloNombres = new DefaultComboBoxModel();
// recoremos el resulset, para extraer los datos
while (rs.next()) {
//agregamos elemento por elemento al modelo, con el elemneto extraido de la columna _id
//que es la columna 1 de tu tabla en la base de datos
modeloNombres.addElement(rs.getString(1));
}
//asignamos al combo el modelo ya llenado
comboNombre.setModel(modeloNombres);
//cerramos la conexion para liberar memoria
conexion.cerrarConexion();
} else {
JOptionPane.showMessageDialog(null, "no hay datos");
}
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, ex.getMessage());
}
}
}