ComboBox que guarda a chave primária

10 respostas
khaue_viana_

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!

10 Respostas

Anime

Oi,

Que?

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

fabiomedeirosf

Está usando algum framework? jsf?

vielmateus

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.
Markus_Alemao

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.

Markus_Alemao

Anime:
Oi,

Que?

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

Boa :smiley:

khaue_viana_

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?

Markus_Alemao

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 …

M

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.

khaue_viana_

Entendi pessoal

Vou tentar aqui.

Obrigado a todos e principalmente ao Markus Alemão

Flw

khaue_viana_

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!

Criado 21 de dezembro de 2010
Ultima resposta 13 de jan. de 2011
Respostas 10
Participantes 6