Gostaria de saber como poderia carregar um TextFiel de acordo com o ítem selecionado no ComboBox com dados do Banco de Dados, por exemplo, tenho uma tabela com os campos “Nº do Banco”, “Agencia” e “Nome do Banco”. Num ComboBox mostro o nome dos bancos e de acordo com o banco selecionado, gostaria que fosse alterado a agencia que é mostrada em um TextField.
Aqui eu carrego o ComboBox:
q5.open("select * from bancos order by nomeBanco desc");
q5.last();
do {
jComboBoxBanco.addItem(q5.fieldbyname("nomeBanco"));
} while (q5.prev());
Como carregar um TextFiedl com:
q5.fieldbyname("agencia")
Eric não entendi!
fiz isso no ActionPerformed do ComboBox :
jTextFieldAgencia.setText(q5.fieldbyname("agencia"));
o TextField vem carregado corretamente, mas qdo eu seleciono outro ítem no combobox ele limpa o textfield e da uma msg de “Field inválido ”.
Imagino que esse “Field inválido” é resultante do método “q5.fieldbyname”. Pode ser que a String passada seja inválida.
O setText do JTextField apenas seta o texto que deve ser exibido no text field, não poderia lançar este erro.
na verdade esse texto não um texto e sim o nome do campo na tabela.
janjan
Outubro 28, 2010, 2:30pm
#6
[code]public class B {
public static void main(String arg[]) throws Exception {
new B();
}
JComboBox combo = new JComboBox();
JTextField tf = new JTextField(5);
public B() throws Exception {
JFrame tela = new JFrame();
tela.setDefaultCloseOperation(tela.EXIT_ON_CLOSE);
tela.setSize(300, 300);
combo.addItem("item um");
combo.addItem("item dois");
combo.addItem("item três");
combo.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
B.this.tf.setText(B.this.combo.getSelectedItem().toString());
}
});
tela.setLayout(new FlowLayout());
tela.add(combo);
tela.add(tf);
tela.setVisible(true);
}
}[/code]
Espero que te ajude!
abraços
O nome do campo na tabela vem de onde?
tenho uma classe que faz isso, por exemplo: jComboBoxBanco.addItem(q5.fieldbyname("nomeBanco"));
carrega o ComboBox.
Então, imagino que a mensagem de “Field inválido” esteja vindo desta classe.
E siga a dica do amigo janjan e adicione ItemListener no combo box ao invés de ActionListener.