Bom dia pessoal.
Tenho um jcombo que é alimentado da seguinte forma.
EntityManager manager = Util.getManager();
manager.getTransaction().begin();
DefaultComboBoxModel comboModel = (DefaultComboBoxModel) jcomboCategoria.getModel();
comboModel.removeAllElements();
List categorias = manager.createQuery(“select cat from Categoria cat order by cat.descricao”, Categoria.class).getResultList();
Estou tentando captura o id da categoria da seguinte forma mas não funciona de forma alguma.
O que posso fazer para conseguir pegar o id da categoria. Não sei , mas acho que a forma que estou alimentando o jcombobox está errada.
Forma que estou utitilizando para pegar o idCategoria mas não esta dando certo.
Olá, sua abordagem aparenta estar incorreta, pois vc adiciona Strings ao combo e depois está tentando pegar uma Categoria, sem lógica.
O ideal é adicionar sua lista de objetos (não String) e depois sim vc consegue capturar o objeto selecionado como estás tentando fazer. Seguem alguns links com exemplos:
boa tarde a todos. A nível de compartilhamento a solução do problema foi a seguinte.
EntityManager manager = Util.getManager();
manager.getTransaction().begin();
//assim como é feito numa JTable, temos o DefaultComboBoxModel que é o model do JComboBox
DefaultComboBoxModel comboModel = (DefaultComboBoxModel) jcomboCategoria.getModel();
//removendo todos os elementos do combo
comboModel.removeAllElements();
List categorias = manager.createQuery(“select cat from Categoria cat order by cat.descricao”, Categoria.class).getResultList();
Para alimentar o JComboBox utilizar a instrução abaixo