Exibir nome mas recuperar codigo?Duvidas com JCombo

2 respostas
M

Ola

Vou passar um list de objetos clientes. Gostaria q exibisse o nome e retornasse o codigo!!no JCombo de uma aplica;'ao swing

Como seria a implementacao???
Ate agora eu cosigo pegar o proprio nome e o indice!
A forma que estou fazendo:

<blockquote>public void popular() {

Teste t1 = new Teste();

t1.setNome(teste1);

t1.setId(1);

jComboBox1.addItem(t1);

Teste t2 = new Teste();

t2.setNome(teste2);

t2.setId(2);

jComboBox1.addItem(t2);

}</blockquote>

recebo o item:
<blockquote>public String retornarValor() {

Teste t = (Teste) jComboBox1.getSelectedItem();

return t.getId;

}</blockquote>

Dessa forma ele me retorna o endereco a classe .

Vi no forum uma “gambiarra”, para pegar o nome mesmo e fazer outra consulta, mas e se no Banco estiver dois nomes???

Alguem?
Grato

2 Respostas

L

eu fiz algo parecido…
no caso eu tenho dois vetores declarados

private String[] Vertice;
private int[] verticeIndice;

ai no action do combo eu tenho algo assim:

Combo.addItemListener&#40; new ItemListener&#40; &#41;&#123;
   		 public void itemStateChanged&#40;ItemEvent e&#41; &#123;
   		 if&#40;e.getStateChange&#40;&#41; == ItemEvent.SELECTED&#41;&#123;
   			noOrigem = verticeIndice&#91;Combo.getSelectedIndex&#40;&#41;&#93;;

   		 &#125;&#125;&#125;&#41;;

noOrigem é uma variável global que recebe um valor int, referente ao valor selecionado.

Em outra parte do meu código eu tenho isso aqui:

Combo.setModel(new javax.swing.DefaultComboBoxModel(Vertice));

:arrow: Nessa linha eu defino os nomes para o combo, com o vetor Veritces…

Detalhe, antes de fazer isso… eu dou um new nos dois vetores:

Vertice = new String&#91;Tamanho&#93;;
verticeIndice = new int&#91;Tamanho&#93;;

ai no caso é so vc preencher o vetor…
e quando selecionar algo, ele te retorna um índice que vc definiu!..

C
public void popular() {

Teste t1 = new Teste();

t1.setNome(teste1);

t1.setId(1);

jComboBox1.addItem(t1);

Teste t2 = new Teste();

t2.setNome(teste2);

t2.setId(2);

jComboBox1.addItem(t2);

}

//=====

public void recuperaValor(){

Teste t1 = new Teste();

t1.setId(   JComboBox.getSelectedItenIndex);

//  ou senao…se usar alguma consulta de codigo

t1.setNome(JComboBox1.getSelectedvalue().toString());

}
Criado 15 de abril de 2007
Ultima resposta 19 de abr. de 2007
Respostas 2
Participantes 3