Combobox não preenche com resultado de pesquisa do banco
6 respostasResolvido
mysqljavaprogramação
C
Carlos_Daniel1
Olá amigos desenvolvedores, estou enfrentando uma dificuldade com preenchimento da minha comboBox quando realizo uma pesquisa na base de dados. Minha combobox possui uma ligação com uma tabela para população de dados da mesma, o código é o seguinte:
Com o código acima eu alimento meus dados na minha combobox isso funciona perfeitamente, porém quando realizo uma busca os dados da busca não preenchem o campo. Preencho meus campos da seguinte forma:
Ressalto que o objeto está preenchido, testei ultilizando um Soutprintln, porém quando faço a busca todos os outros campos são preenchidos menos as cbbox.
Desde já sou grato pela atenção e ajuda de todos, um forte abraço.
Poste a classe Cargo pra gente ver. Acredito que seja pela falta da implementação dos métodos equals e hashcode que o JCombobox.setSelectedItem deve usar para apresentar o item selecionado.
Implemente os métodos equals e hashcode usando a propriedade codigoCargo e veja se funciona. (geralmente as IDEs auxiliam na criação desses métodos)
C
Carlos_Daniel1
Olá @Lucas_Camara obrigado pela atenção mais uma vez implementei como solicitou, porém não sei se precisa fazer algo na view pois não aconteceu nada. O Combobox continua sem preencher, segue abaixo como ficou o HashCode e Equals:
privatevoidbtnPesquisaUsuarioActionPerformed(java.awt.event.ActionEventevt){UsuarioControlleruc=newUsuarioController();Usuariousuario=newUsuario();if(this.validaPesquisa()){JOptionPane.showMessageDialog(null,"Preencha o campo para realizar uma pesquisa","ERRO",JOptionPane.ERROR_MESSAGE);}else{try{usuario=uc.buscaUsuario(this.txtPesquisaUsuario.getText());if(usuario.getLogin()==null){System.out.println("Não existe");}else{ViewUsuario.idUsuario.setText(Integer.toString(usuario.getCodigoUsuario()));this.txtNome.setText(usuario.getNome());this.txtCpf.setText(usuario.getCpf());this.txtLogin.setText(usuario.getLogin());this.txtSenha.setText(usuario.getSenha());this.lblCargo.setText(usuario.getCargo().getCargo());this.lblSetor.setText(usuario.getSetor().getNome());this.cbSetor.setSelectedItem(usuario.getSetor().getNome());this.cbCargo.setSelectedItem(usuario.getCargo().getCargo());}}catch(Exceptione){System.out.println(usuario.getLogin());System.out.println("Erro na busca");}}}