Atualizar dados numa JComboBox apos atualização no BD [RESOLVIDO]

Ola amigos estou com problema de atualização apos eu clicar no botão atualizar queria que os itens da JComboBox atualizasse como fiz na JTable que ficou perfeito, mas na JComboBox não esta fazendo peço um Help. Abraços a todos.

//Popula a comboBox.

private void carregaComboBox() {

    for (Setor s : daoS.listarSetor()) {
        cbSetor.addItem(s);
    }
}

private void carregarTabela() {

    DefaultTableModel modelo = (DefaultTableModel) tabSetor.getModel();
    modelo.setNumRows(0);
    for (Setor setor : daoS.listarSetor()) {
        modelo.addRow(new Object[]{
            setor.getId_setor(),
            setor.getDescricao()
        });
    }
}

private void btnAtualizarActionPerformed(java.awt.event.ActionEvent evt) {

    if (tabSetor.getSelectedRow() == -1) {
        JOptionPane.showMessageDialog(null, "POR FAVOR SELECIONE UM ITEM DA TABELA PARA ATUALIZAÇÃO!!!", "MENSAGEM", JOptionPane.ERROR_MESSAGE, new ImageIcon(getToolkit().createImage(getClass().getResource("/icones/aviso.png"))));
    } else {
        setor.setId_setor(Integer.parseInt(tabSetor.getValueAt(tabSetor.getSelectedRow(), 0).toString()));
        setor.setDescricao(txtdesc.getText());           
        daoS.atualizarSetor(setor);            
        JOptionPane.showMessageDialog(null, "SETOR ATUALIZADO COM SUCESSO!!!!", "MENSAGEM", JOptionPane.INFORMATION_MESSAGE, new ImageIcon(getToolkit().createImage(getClass().getResource("/icones/confirma.png"))));
        this.carregarTabela();            
    }
}

@pellegrini2106 Olá mostra teu código que popula o jcombobox

jacoboliveira olha o código amigo!!!

private void carregaComboBox() {

    for (Setor s : daoS.listarSetor()) {
        cbSetor.addItem(s);
    }
}

Pois eu te encorajo a usar a classe model DefaultComboBoxModel é melhor de controlar os itens do combo

Aqui um exemplo:

 DefaultComboBoxModel<String> model;

 public NewJFrame() {
    model = new DefaultComboBoxModel<>();
    //configurando o model no combo
    jComboBox1.setModel(model);
    //populando ao inicializar o Jframe
    for (String item : itens) {
        model.addElement(item);
    }
  }

  private void atualizarComboActionPerformed(java.awt.event.ActionEvent evt) {                                         
    // TODO add your handling code here:
       //Pra atualizar o combo basta remover e inserir de novo os itens
       model.removeAllElements();

       for (String item : itens) {
         model.addElement(item);
       }
    
    }  

Veja se é isso que vc quer

Poxa jacoboliveira obrigado pela grande ajuda que você me deu o codigo caiu como uma luva e funciona perfeitamente!!!
Novamente te agradeço de montão!!! aquele abraço!!!

Olha como ficou o meu codigo:
// Declarei fora do Metodo.
DefaultComboBoxModel <‘Object’> model = new DefaultComboBoxModel<>();

private void carregaComboBox() {

//configurando o model no combo
cbSetor.setModel(model);

    for (Setor s : daoS.listarSetor()) {
        model.addElement(s);
    }
}

private void atualizaCombox(){
    
     model.removeAllElements();

   for (Setor s : daoS.listarSetor()) {
     model.addElement(s);
   }        
}

private void carregarTabela() {

    DefaultTableModel modelo = (DefaultTableModel) tabSetor.getModel();
    modelo.setNumRows(0);
    for (Setor setor : daoS.listarSetor()) {
        modelo.addRow(new Object[]{
            setor.getId_setor(),
            setor.getDescricao()
        });
    }
}

private void consultarPorSetor() {

    DefaultTableModel modelo = (DefaultTableModel) tabSetor.getModel();
    modelo.setNumRows(0);
    for (Setor setor : daoS.ConsultarPorSetor((Setor) cbSetor.getSelectedItem())) {
        modelo.addRow(new Object[]{
            setor.getId_setor(),
            setor.getDescricao()
        });
    }
}

private void btnAtualizarActionPerformed(java.awt.event.ActionEvent evt) {                                             

    if (tabSetor.getSelectedRow() == -1) {
        JOptionPane.showMessageDialog(null, "POR FAVOR SELECIONE UM ITEM DA TABELA PARA ATUALIZAÇÃO!!!", "MENSAGEM", JOptionPane.ERROR_MESSAGE, new ImageIcon(getToolkit().createImage(getClass().getResource("/icones/aviso.png"))));
    } else {
        setor.setId_setor(Integer.parseInt(tabSetor.getValueAt(tabSetor.getSelectedRow(), 0).toString()));
        setor.setDescricao(txtdesc.getText());
        daoS.atualizarSetor(setor);
        JOptionPane.showMessageDialog(null, "SETOR ATUALIZADO COM SUCESSO!!!!", "MENSAGEM", JOptionPane.INFORMATION_MESSAGE, new ImageIcon(getToolkit().createImage(getClass().getResource("/icones/confirma.png"))));
        this.carregarTabela();
        this.atualizaCombox();                        
    }
}                                            

private void btnDeletarActionPerformed(java.awt.event.ActionEvent evt) {                                           

     if (tabSetor.getSelectedRow() == -1) {
        JOptionPane.showMessageDialog(null, "POR FAVOR SELECIONE UM ITEM DA TABELA PARA SER DELETADO!!!", "MENSAGEM", JOptionPane.ERROR_MESSAGE, new ImageIcon(getToolkit().createImage(getClass().getResource("/icones/aviso.png"))));
    } else {
        setor.setId_setor(Integer.parseInt(tabSetor.getValueAt(tabSetor.getSelectedRow(), 0).toString()));
        setor.setDescricao(txtdesc.getText());
        daoS.deletarSetor(setor);
        JOptionPane.showMessageDialog(null, "SETOR DELETADO COM SUCESSO!!!!", "MENSAGEM", JOptionPane.INFORMATION_MESSAGE, new ImageIcon(getToolkit().createImage(getClass().getResource("/icones/confirma.png"))));
        this.carregarTabela();
        this.atualizaCombox();                        
    }
}
1 curtida

Parabêns @pellegrini2106 ficou perfeito mesmo, que bom que deu certo

1 curtida