Pesquisando aqui no forum achei alguns topicos que ensinavam como voltar uma informação ao combox, pq acontece o seguinte tenho uma tela de busca que o usuario digita um codigo e volta a informação, no Jtext normal a invormação vem certinha mas no s combobox não está ficando na posição que eu quero, como for exemplo tem um que é de fornecedores ele não está indo para o fornecedor cadastrado.
O codigo que estou usando é:
JC_Fab.addItem(rs.getString("Fabricante"));
Bota seu código inteiro ai que eu ja te ajudo…
me explica direitinho o que você quer fazer…
to fazendo uma busca no banco e tentando voltar as informações para o usuario ver, segue o codigo:
[code] busca = JT_ref.getText();
busca = busca.trim();
busca = busca.toUpperCase();
try {
// Cria e executa uma instrução SQL
MeuState = conn.createStatement();
} catch (SQLException ex) {
ex.printStackTrace();
JOptionPane.showMessageDialog(null, "erro de STATEMENT");
}
try {
rs = MeuState.executeQuery("select * from arma where refe='" + busca + "';");
System.out.println(rs);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Problema de conexao: " + ex.getMessage());
}
try {
if (rs.next()) {
do{
JC_tipo.addItem(rs.getString("Tipo"));
JC_modelo.addItem(rs.getString("Modelo"));
JT_cor.setText(rs.getString("Cor"));
JC_Fab.addItem(rs.getString("Fabricante"));
auxiliar3 = rs.getInt("Quanti");
JT_qua.setText(String.valueOf(auxiliar3));
auxiliar3 = rs.getInt("Tamanho");
JT_tam.setText(String.valueOf(auxiliar3));
id = rs.getInt("Id_arma");
}while(rs.next());
} else {
JOptionPane.showMessageDialog(null, "Não existe no Cadastro!");
}
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Problema de conexão: " + ex.getMessage());
}[/code]
Então… Tente Fazer Assim…
No Lugar Disso
[code]
if (rs.next()) {
do{
JC_tipo.addItem(rs.getString(“Tipo”));
JC_modelo.addItem(rs.getString(“Modelo”));
JT_cor.setText(rs.getString(“Cor”));
JC_Fab.addItem(rs.getString(“Fabricante”));
auxiliar3 = rs.getInt("Quanti");
JT_qua.setText(String.valueOf(auxiliar3));
auxiliar3 = rs.getInt("Tamanho");
JT_tam.setText(String.valueOf(auxiliar3));
id = rs.getInt("Id_arma");
}while(rs.next());
} else {
JOptionPane.showMessageDialog(null, "Não existe no Cadastro!");
} [/code]
COloque assim
[code]
if(rs !=null){
while(rs.next()) {
JC_tipo.addItem(rs.getString(“Tipo”));
JC_modelo.addItem(rs.getString(“Modelo”));
JT_cor.setText(rs.getString(“Cor”));
JC_Fab.addItem(rs.getString(“Fabricante”));
auxiliar3 = rs.getInt("Quanti");
JT_qua.setText(String.valueOf(auxiliar3));
auxiliar3 = rs.getInt("Tamanho");
JT_tam.setText(String.valueOf(auxiliar3));
id = rs.getInt("Id_arma");
}
}
else{
Teu JOptionPane…
}[/code]
Assim funciona… Não tem erro nesse teu add…
O que realmente está acontecendo…
ele não adiciona o Item no ComboBox Fabricante ???
Então erro não dá não, uso um do-while pq pode ser que não aja o produto cadastrado, e com owhile não estava dando certo, mas o que preciso mesmo é que o combobox fabricante (por exemplo ) volte para o fabricante cadastrado.
Exemplo:
Se cadastrei GENERICO, quero que quando realizar a busca o combobox vá para o GENERICO contido nele, deu para entender?
Bom… Dificil entender… foi mal mesmo… eu tmb sou pitoco 
Mas assim, um modo de você ir para uma position no ComboBox é por armazenando a position dele…
mas onde você realiza o cadastro… e pra que serve esse select… Eu sei que é chato mas precisamos entender isso
o select serve para buscar uma determinda informação dado pelo usuario tipo ele quer pesquisar os fornecedores então ele digita o nome do fornecedor e o sistema volta as informações desse fornecedor, os campos de texto estão funcionando bem voltam a informação do banco o unico problema é os combobox que não estão voltando para a informação armazenda no banco.
olá Willdoidao,
Experimente fazer o seguinte:
no trecho que você vai preencher o combobox do fabricante:
[code]String fabricante = rs.getString(“Fabricante”);
JC_Fab.addItem( fabricante );
JC_Fab.setSelectedItem( fabricante ); //usa esse método para posicionar o combo do fabricante…[/code]
Porém, de acordo com o seu código, se o seu rs tiver n registros o fabricante exibido será aquele que estiver no último registro.
Quantos registros o seu select traz? Quantos deveria trazer? Talvez por isso não tenha alcançado o objetivo “esperado”.
Espero ter ajudado
[]s