Dúvida combobox valores

4 respostas
moacirrox

bom pessoal, estou colocando um combobox no sistema, porém aprendi a puxar os nomes para dentro do select

while(con_estados.resultset.next()){
             cbEstados.addItem(con_estados.resultset.getString("nome"));
        }

mais assim como existe no html eu gostaria de saber se tem como fazer no java, no html podemos acregar valores ao nome de cada campo, no meu caso quero que apresente o nome do estado, porém grave no banco de dados a id do estado selecionado, isso é possivel no java?

exemplo html

<option value="XX">NOME_DO_CAMPO</option>

no java quero q no XX pegue a id e o nome do campo coloque o nome do estado.

Obrigado!

EDIT: sinceras desculpas pelo tópico duplo, pois avia apresentado erro no primeiro envio.

4 Respostas

felipe.far

Se eu entendi corretamente, então você poderia fazer ± asim:

csEstados.addItem(estado); (ou seja, em vez colocar uma lista de string, voce coloca uma lista de objetos)

quando voces for montar o html, então voce coloca values=estado.id e o nome do estado pra exibir pro usuário…

Entendeu ? É realmente isso que você estava pensando em fazer?

moacirrox

estou montando um sistema desktop man, mals por n explicar isso, no html o select vc pode colocar o value e no javase n to sabendo onde coloco esse value, acredito que ele puxe o valor que mostra no campo msm…

yhhik

supondo que vc tenha uma tabela no BD que tenha o id e a uf.

vc deve criar uma entidade no java tbm igual ao banco:
public class UF {
	
private int idUf;
private String UF;
public String toString() {//vc deve sobreesver para que aparece no combo a uf
return UF;
}
}
no select faça assim(seu metodo deve retornar uma lista de UF) :
while (rs.next()){                   
 UF uf = new UF();   
 uf.setIdUF( rs.getInt("idUf"));     
 uf.setUf(rs.getString("UF"));

e para add as uf faça assim:

for(UF uf:ListaUF)
cbUf.addItem(uf);

na hora de salvar vc pegar a uf e usa o get para pegar o id.

moacirrox

pensei em tipo na hora do insert do cadastro pegar e fazer uma busca seguinte

String sql = ("select * from estados where nome like'"+cbEstados.getSelectedItem()+"'");
           con_estados.executarSQL(sql);
           String pega_uf = con_estados.resultset.getString("uf");

entendi ± sua lógica mais to boiando aqui ainda kakakakaak

Criado 5 de dezembro de 2011
Ultima resposta 5 de dez. de 2011
Respostas 4
Participantes 3