Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: jairoo98 en 12 de Mayo 2017, 01:45

Título: JavaFX, rellenar un Combo Box con datos traídos de base de datos MySql
Publicado por: jairoo98 en 12 de Mayo 2017, 01:45
Tengo este código el cual hace el combo box:

Código: [Seleccionar]
private void setComboBox(){
        productos_comboPROVEEDOR.setCellFactory(new Callback<ListView<Proveedores>, ListCell<Proveedores>>() {
            @Override
            public ListCell<Proveedores> call(ListView<Proveedores> p) {
                final ListCell<Proveedores> cell = new ListCell<Proveedores>(){
                  @Override
                  protected void updateItem(Proveedores t, boolean b){
                      super.updateItem(t,b);
                      if(p!=null){
                          setText(p.getId());
                      }else{
                          setText(null);
                      }
                }
              };
                return cell;
         }
        });
         productos_comboPROVEEDOR.setItems(observableListProv);
      }


Y este otro fragmento que es el que rellena el combo box:

Código: [Seleccionar]
private void rellenarComboBox(){
        observableListProv.clear();
       
        String query="SELECT p.id, c.id_proveedor FROM proveedores p LEFT JOIN catalogo c ON c.id_proveedor = p.id";
        ConexionMySQL conexionBd = new ConexionMySQL();
        Connection con = conexionBd.conectar();
        Statement Squery;
        try{
            Squery = con.createStatement();
            ResultSet resultado = Squery.executeQuery(query);
            while(resultado.next()){
                Proveedores pro = new Proveedores(resultado.getString("id"));
               
                observableListProv.add(pro);
            }
        }catch(Exception e){
           
            JOptionPane.showMessageDialog(null, "No se pudo rellenar el combobox de proveedores"+e);
        }
       
    }

Pero al ejecutar el proyecto,  el combo box no muestra nada, solo despliega la lista pero no carga nada.

Lo que trato de hacer es que el proveedor aparezca en el combo box, para ello cree una tabla en MySQL llamada proveedores, la cual tiene 2 columnas: id y nombre, y la otra tabla, llamada catalogo que es donde guardo productos la cual tiene 4 columnas: id, nombre, precio e id_proveedor, por lo cual el id del proveedor quiero que este en la columna id_proveedor para que en el combo box aparezca el nombre de ese id.

Pero no se cuál es el error, si está en setComboBox();,  rellenarCombobox();, o en la tabla de mysql.