ComboBox que guarda a chave primária

Pessoal trabalho no C# e sei que la temos a opçao de mostrar um texto e guardar um código (o usuário nem imagina que isso ta acontecendo) na comboBox. Gostaria de saber se isso é possível e como fazer no Java?

Obrigado!

Oi,

Que?

O usuário não tem noção de nada… :roll:

Está usando algum framework? jsf?

Então, pelo que entendi, você quer mostrar uma informação, porém existe uma chave primaria para cada informação.
Exemplo:
Chave - Valor
1 Abacaxi
2 Bola
3 Dado

  1. Criei um Objeto com os dados que necessito, la dentro eu tenho os getters e setters.
  2. Adiciono o objeto ao combobox e manipulo os dados usando os objetos adicionados.

Complementando a resposta do vielmateus tambem sobrescreva o metodo toString retornando o atributo do referido objeto que sera o rotulo (o que sera exibido ao usuario) do combobox.

[quote=Anime]Oi,

Que?

O usuário não tem noção de nada… :roll: [/quote]

Boa :smiley:

Bom vou ver por aki, pensei que existia algo mais fácil. É possível criar uma Model com 2 colunas? Ai teria o Código e a Descrição por exemplo? Ai dessa forma eu utilizava essa model na minha JComboBox?

Segue exemplo :

public class Fruta {

    private String nome;
    private String caracteristicas;

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getCaracteristicas() {
        return caracteristicas;
    }

    public void setCaracteristicas(String caracteristicas) {
        this.caracteristicas = caracteristicas;
    }
    
    @Override
    public String toString(){
        return this.nome;
    }

}

Criando alguns objetos e carregando na JComboBox…

        Fruta banana = new Fruta();
        banana.setNome("Banana");
        banana.setCaracteristicas("casca pratica");
        
        Fruta maca = new Fruta();
        maca.setNome("Maça");
        maca.setCaracteristicas("boa para sucos");
        
        this.jComboBox.addItem(maca);
        this.jComboBox.addItem(banana);

Acho que é a forma mais simples de ser feito…espero ter ajudado …

O ComboBoxModel não tem colunas. Ele tem objetos dentro dele (que muitas vezes são Strings). Se precisar armazenar um objeto diferente, faça como o Markus Alemao demonstrou.

Entendi pessoal

Vou tentar aqui.

Obrigado a todos e principalmente ao Markus Alemão

Flw

Pessoal, agora to utilizando esse código aqui:

  while (rs.next()) {
                cmbTeste.addItem(rs.getString("nm_teste"));
            }

Será que num facilitaria, através desse ResultSet eu pegar o ID na minha consulta?

Deve ter uma forma com certeza, mas eu não sei qual é.

Será que alguem têm idéia ai?

Vlw pessoal!