pessoal, nao consegui encontrar uma maneira de resolver o meu problema vendo os topicos aqui do forum
eu tenho um JComboBox e nele vem uma lista do meu banco de dados com as strings
e qualquer string que eu seleciono nesta lista ele salva no banco, seja qualquer posicao que ela esteja!
ai quando eu fiz um split para separar 2 itens no combo que vieram os problemas
agora ele nao pega qualquer posicao mais, ele envia somente o primeiro da lista!
segue o meu metodo q mostra os itens no combo
public void mostrarIdObra()
{
try
{
ContratoDao dao = new ContratoDao();
List<CadObra> listaObras = dao.getListaIdObra();
for (CadObra cc : listaObras)
cbObra.addItem(cc);
}
catch (SQLException ex)
{
JOptionPane.showMessageDialog(this, ex, "Erro ", JOptionPane.ERROR_MESSAGE, null);
}
}
Cara, explica aí melhor pq eu particularmente não entendi…
rafa120
ai tem essa lista ai que sao todas as obras cadastradas
só que quando seleciono este “OBR.002 - Teste 1” ele nao envia este, envia somente o primeiro da lista “OBR.001 – Empresa Rafael”
lordtiago
rafa, o código que você mostrou só adiciona o resultado da consulta por comboBox, você está dizendo que este código só carrega o primeiro item da lista?
rafa120
Não, ele carrega todos itens da lista.
Mas quando quero enviar pro banco qualquer item da lista, ele envia somente o primeiro registro que estiver ai na lista.
Entende?
bom, este código que passei é que mostra os itens ai dentro do combo né
eu tenho outro aqui, mas nao sei se tem a ver
publicvoidcadastro()throwsParseException{try{CadContratocad=newCadContrato();StringitemComboBox=cbObra.getItemAt(0).toString();String[]itemsComboBox=itemComboBox.split("--");StringidObra=itemsComboBox[0];StringnomeProjetoObra=itemsComboBox[1];cad.setObra(idObra);ContratoDaodao=newContratoDao();dao.adiciona(cad);JOptionPane.showMessageDialog(this,"Contrato cadastrado com sucesso!","Mensagem",JOptionPane.INFORMATION_MESSAGE);}catch(SQLExceptionex){JOptionPane.showMessageDialog(this,ex,"Erro ao cadastrar o contrato",JOptionPane.ERROR_MESSAGE,null);}}
rafa120
Alguma ajuda, por favor?
djorodrigo
Cara,
seu código está pegando o primeiro item da lista.
O que você tem que fazer é, usando o método getSelectedIndex() do JComboBox e pegar o item selecionado, e daí em diante, usar o método cbObra.getItemAt passando o índice(elemento) selecionado no combo.
Algo assim: String itemComboBox = cbObra.getItemAt(JComboBox.getSelectedIndex()).toString();