Ir ao conteúdo
  • Cadastre-se

Java Não consigo exibir item selecionado no JComboBox


Posts recomendados

Olá, estou fazendo um programa para cadastro de animais com interface gráfica, alguns itens como Tipo, Sexo, Porte e Castrado, eu coloquei pra abrir numa JComboBox as opções, só que quando vou consultar o animal cadastrado, aparece todas as informações que estão em caixa de texto, as de JComboBox não, alguém poderia me ajudar a conseguir mostrar esses itens? 

Citação
//Código de Cadastro

public void cadastrarCao () {
      
        cachorro = new Cachorro ();  
        try {
        cachorro.setNome(cxNome.getText());
        cachorro.setId(Integer.parseInt(cxId.getText()));
        cachorro.setTipo((String) cxTipoBox.getSelectedItem());
        cachorro.setIdade(Integer.parseInt(cxIdade.getText()));
        cachorro.setRaca(cxRaca.getText());
        cachorro.setSexo((String) cxSexoBox.getSelectedItem());
        cachorro.setCor(cxCor.getText());
        cachorro.setPorte((String) cxPorteBox.getSelectedItem());
        cachorro.setCastrado((String) cxCastradoBox.getSelectedItem());
        cachorro.setCidade(cxCidade.getText());
        cachorro.setEstado(cxEstado.getText());
         
        cachorro = gerCao.cadCao(cachorro);
         
         if(cachorro != null){
            JOptionPane.showMessageDialog(null, "Cachorro cadastrado com sucesso!", "Cadastro OK", 1);
            limpar();
         }
         else{
            JOptionPane.showMessageDialog(null, "Já existe um cachorro com este ID!", "Erro de ID", 0);
            cxId.setText("");
            cxId.requestFocus();
         }
        } 
        catch(NumberFormatException nfe){
            JOptionPane.showMessageDialog(null, "O ID deve ser um inteiro!", "ERRO de ID", 0);
            cxId.setText("");
            cxId.requestFocus();
        } catch (IdadePqException | IdadeGrdException ex) {
            Logger.getLogger(CadCao.class.getName()).log(Level.SEVERE, null, ex);
        }
}

 

 

E aqui o de Consulta:

 

//Código para consulta

public void consCaoId(){
        cachorro = new Cachorro();
      
            cachorro.setId(Integer.parseInt(cxId.getText()));
          
            cachorro = gerCao.consCaoId(cachorro);
            
         if(cachorro != null){
             
            cxNome.setText(cachorro.getNome());
            cxId.setText(Integer.toString(cachorro.getId()));
            cxTipoBox.setSelectedItem((String) cxTipoBox.getSelectedItem());
            cxIdade.setText(Integer.toString(cachorro.getIdade()));
            cxRaca.setText(cachorro.getRaca());
            cxSexoBox.setSelectedItem((String) cxSexoBox.getSelectedItem());
            cxCor.setText(cachorro.getCor());
            cxPorteBox.setSelectedItem((String) cxPorteBox.getSelectedItem());
            cxCastradoBox.setSelectedItem((String) cxCastradoBox.getSelectedItem());
            cxCidade.setText(cachorro.getCidade());
            cxEstado.setText(cachorro.getEstado());
            
            
            
            JOptionPane.showMessageDialog(null, "Confira os Dados do Cachorro!", "Cachorro encontrado", 1);
            limpar();
         }
         else{
            JOptionPane.showMessageDialog(null, "Não existe Cachorro com este ID!", "Cachorro inexistente", 0);
            cxId.setText("");
            cxId.requestFocus();
         
        } 
 }   

 

Link para o comentário
Compartilhar em outros sites

Difícil dizer com certeza. Verifique se os dados estão sendo obtidos corretamento do ComboBox. Aparentemente seu código não está errado.

 

Veja se esse exemplo te ajuda de alguma forma:

package game.larissa.cadastro;

import javax.swing.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Classe {

    public static void main(String[] args) {
        Classe classe = new Classe();
        classe.exemploEnum();
        classe.exemploString();
    }


    public void exemploEnum() {
        List<TipoAnimal> items = new ArrayList<>(Arrays.asList(
                TipoAnimal.values()
        ));

        JComboBox<TipoAnimal> comboBox = new JComboBox<>();
        items.forEach(comboBox::addItem);

        // simula que o usuário selecionou a segunda opção
        comboBox.setSelectedIndex(1);

        // pega o item selecionado
        TipoAnimal selecionado = (TipoAnimal) comboBox.getSelectedItem();
        System.out.println("selecionado = " + selecionado);
    }

    public void exemploString() {
        List<String> items = new ArrayList<>(Arrays.asList(
                "Cachorro",
                "Gato",
                "Papagaio",
                "Periquito"
        ));

        JComboBox<String> comboBox = new JComboBox<>();
        items.forEach(comboBox::addItem);

        // simula que o usuário selecionou a segunda opção
        comboBox.setSelectedIndex(1);

        // pega o item selecionado
        String selecionado = (String) comboBox.getSelectedItem();
        System.out.println("selecionado = " + selecionado);
    }


    private enum TipoAnimal {
        MAMIFERO, AVE, REPTIL
    }
}

 

Se você puder postar o código completo, nós podemos depurá-lo, assim vai dar para ajudar com mais exatidão.

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!