JComboBox

Boas Galera,

Estou a desenvolver uma app em java, onde necessito de implementar uma combobox.
O q eu gostava de saber, é se é possivel mapear a combo com 2 atributos.
Ex.
Tenho um id e um nome.
Eu quero que apareçam os nomes na combo, porém qdo alguém seleccionar determinado nome, guardar numa variável o id associado a esse nome.

Em .Net eu sei q isso dá pra fazer, mas em java já andei à procura e não encontrei nada.

Será que alguém me pode ajudar?

//Graveyard

isso ai é normal vc pode fazer até mesmo com html mesmo…
e puxar apenas do banco ou sei la da onde a referencia do nome ao id…

use o JComboBoxOption

      JComboBox combo = new JComboBox();
      
      JComboBoxOption option1 = new JComboBoxOption("id_q_quizer1", "objeto_q_quiser1");
      JComboBoxOption option2 = new JComboBoxOption("id_q_quizer2", "objeto_q_quiser2");
      JComboBoxOption option3 = new JComboBoxOption("id_q_quizer3", "objeto_q_quiser3");
      
      combo.addItem(option1);
      combo.addItem(option2);
      combo.addItem(option3);

mas o que ele ta tentando fazer não é java web?

Tente usar um componente chamado JMappedComboBox.
Não tenho nenhum exemplo de uso. Mas pela definicao parece que atende o que voce procura

JMappedComboBox.java is a GUI class that extends JComboBox to allow a hidden
“column” of information to go along with the user-displayed information.
This is useful for keeping “keys” to database entries or the like.

Boas,

Realmente o que o bruxel disse, era ouro sobre azul, mas se funcionasse.
A classe JComboBoxOption não existe.

Não sabem outra forma de fazer isto?

//Graveyard

:oops:

implemente-a

public class JComboBoxOption {

    private String name;
    private Object value;
    
    public JComboBoxOption(String name, Object value) {
        this.name = name;
        this.value = value;
    }
    
    public String toString() {
        return this.name;
    }
    
    public Object getValue() {
        return this.value;
    }

}

foi assim que fiz, talvez possa ajusta-la para o seu gosto