Como pegar valor Swing JcomboBox [RESOLVIDO]

3 respostas
renato_ramos

Boa tarde Pessoal!

estou travando uma batalha contra um jcombobox,

é que eu qru é seguinte, mostrar o valor da descrição de um elemento pro usuario escolher, só que na hora de dar o get pra gravar eu qru o codigo do elemento,

por exemplo… eu tenho uma tabela de logradouros… eu mostro o nome dos logradouros para escolha… mas como eu posso ter logradouro com o mesmo fica inviavel pegar o valor do nome do logradouro.

no meu caso estou tentando fazer um cadastro de um objeto que tem um endereco… essas tabelas estao relacionadas… outro motivo pra eu pegar somente o valor do codigo que é a chave primaria em questao.

eu já consegui colocar a descricao do logradouro… com os components drag and drop do netbeans…

acho que fico meio confuso neh?

ms eu to ficando doidin xD

mt obrigado pela atenção … e desculpa fazer vc perder tempo lendo esse post \o/

ms ajuda ae?? por favor

3 Respostas

doug

Olá

Para fazer isso ao inves de você utilizar o Vector de String , utiliza o vector do seu objeto mas sobreecrito o ToString dele.
Meio complicado? É simples… vejo o Exemplo:

class Pessoa{
 private Integer id;
 private String nome;

//get´s e set´s

public String toString(){
return this.nome;
}
}


//Dai no seu JComboBox
Vector<Pessoa> pessoas = new PessoaBD().getPessoas();
JComboBox box = new JComboBox(pessoas);

// dai a agora que vc utilizar o getSelectedItem(), você faz um cast para Pessoas
Pessoa p  = (Pessoa)box.getSelectedItem();
p.getId(); //por exemplo.

Espero ter ajudado
Qualquer duvida estamos aqui.

Flwsss

vanderlanio

add o Objeto na sua JcomboBox ex:

minhaComboBox.addItem(objeto);

depois é só pegar o selecionado :

MeuObjeto objeto = (MeuObjeto) minhaComboBox.getSelectedItem();

Para apresenta a propriedade que deseja na combo e só sobrescrever o metodo toString do seu Objeto.

:lol:

renato_ramos

mt obrigado aos dois… funcionou… facinho… e eu me matando … passei um dia pra aprender isso lol

resolvido \o/

Criado 3 de novembro de 2009
Ultima resposta 4 de nov. de 2009
Respostas 3
Participantes 3