Pessoal é o seguinte, eu tenho uma JComboBox com todos os codigos do cliente o que eu quero fazer é que ao selecçionar um determinado codigo na JComboBox os valores desse cliente são setados nas JTextField so que basta eu arrancar o programa e clicar no menu aonde faço isso ele gera uma excepção do tipo NullPointerException na linha em que estou a colocar os valores, nem chama mais a JFrame, o meu metodo de pesquisa esta correcto porque testei de um outro jeito e funcionou, eis os metodos:
public void pesquisaCliente(){
String codigoCliente = cboCodigoCliente.getSelectedItem().toString();
GravadorCliente gc = new GravadorCliente();
try{
ClienteModelo cm= (ClienteModelo)gc.ler(codigoCliente);
if(cm != null){
txtNomeCliente.setText(cm.getNomeCliente());
txtValorActual.setText(cm.getSaldoContaCliente() + "");
}
else
JOptionPane.showMessageDialog(this, "Registo não encontrado","BFA - Deposito",JOptionPane.ERROR_MESSAGE);
}
catch (IOException ex)
{
JOptionPane.showMessageDialog(this, "Erro ao fazer a leitura do ficheiro","BFA - Deposito",JOptionPane.ERROR_MESSAGE);
}
}
public void actionPerformed(ActionEvent e) {
cboCodigoCliente = (JComboBox)e.getSource();
if(e.getSource() == btnPesquisarDadosCliente){
pesquisaCliente();
}
else if(e.getSource() == btnNovo){
habilitarCampos();
incrementaCodigoDeposito();
}
else if(e.getSource() == btnGuardar){
inserirDeposito();
limparCampos();
btnNovo.setEnabled(true);
btnGuardar.setEnabled(false);
}
else if(e.getSource() == btnLimpar){
limparCampos();
}
else if(e.getSource() == btnCancelar){
this.dispose();
}
else if(!cboCodigoCliente.getSelectedItem().toString().equals("-1")){
pesquisaCliente();
}
}