Agradeço primeiro aos amigos do Forum, pois me ajudaram muito nas varias dicas que procurei, sempre que alguem posta algo é rapidamente respondido. Sou programador VBasic 10anos e Cobol a 19 anos e estou mudando para o JAVA pretendo passar todos os meus programas para essa linguagem e umas das dificuldades foi o jComboBox e aqui vai o codigo, está funcionando corretamente, estou usando o JBuilder. Gostaria que os programadores experientes comentassem o codigo:
public class NomedaClasse extends JPanel {
private Integer chaveCid[]; // Cria a Array chave_cidade
private void jbInit() throws Exception {
try {
String query="SELECT * FROM CIDADE order by CIDADE";
ResultSet result1=executaSQL.executeQuery(query);
chaveCid = new Integer[124]; // Dimensiona a Array ou leia o tamanho da tabela com SELECT COUNT
int i=0;
while(result1.next()) {
int ch = result1.getInt("chave_cidade");
chaveCid[i]=new Integer(ch); // Grava as chaves na Array
i=i+1;
String Bairro=result1.getString("cidade");
jComboBox1.addItem(Bairro); // Grava o Nome da Cidade no ComboBox
}
}
// Quando clicar no Combo a posição e guardada em uma variavel
// E com essa posição acha-se o conteudo da Array que é chave desejada
// Ai é só disparar uma consulta SELECT e obter o resto dos registros
public void jComboBox1_actionPerformed(ActionEvent e) {
int chave= jComboBox1.getSelectedIndex(); // Recebe a posição
int ch1=0;
ch1=chaveCid[chave].intValue() ; // Recebe o conteudo da Array
JOptionPane.showMessageDialog(null,
"Chave deste Registro é "+ ch1+" "+chave,
"Atenção",JOptionPane.ERROR_MESSAGE);
}
// ch1 mostra a chave_primaria e chave = mostra a posição da Array - Exemplo
// para conferir
}