Estou tentando abrir a tela de cadastro e setar os dados que estão no jtable quando dou dois cliques, porém não está retornando os dados.
Segue o código do meu getvalueat:
public Object getValueAt(int linha, int coluna) {
switch(coluna){
case 0:
return clientes.get(linha).getCodigo().toString();
case 1:
return clientes.get(linha).getNome().toString();
case 2:
return clientes.get(linha).getDataNascimento().toString();
case 3:
return clientes.get(linha).getReturnfoto().toString();
default:
return null;
}
}
e a minha chamada no jtable:
private void tblDadosMouseClicked(java.awt.event.MouseEvent evt) {
if (evt.getClickCount()==2) {
try {
cadastro_Aluno cadastroAluno=new cadastro_Aluno();
cadastroAluno.campoJTable(modelo.getValueAt(tblDados.getSelectedRow(), 0).toString(),tblDados.getValueAt(tblDados.getSelectedRow(), 1).toString(),tblDados.getValueAt(tblDados.getSelectedRow(),2).toString());
cadastroAluno.setVisible(true);
} catch (Exception ex) {
Logger.getLogger(SubJanela_ConsultaAlunos.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
E na tela de cadastro, que eu quero setar estes dados:
public void campoJTable(String codigo,String nome,String dataNascimento) {
txfMatricula.setText(codigo);
txfNome.setText(nome);
txfDataNascimento.setText(dataNascimento);
}
Já tentei de tudo que foi jeito, porém só dá o erro:
09/12/2011 10:21:40 swing.SubJanela_ConsultaAlunos tblDadosMouseClicked
GRAVE: null
java.lang.ArrayIndexOutOfBoundsException: -1
at java.util.ArrayList.get(ArrayList.java:324)
at Util.tableModelAlunos.getValueAt(tableModelAlunos.java:59)
at swing.SubJanela_ConsultaAlunos.tblDadosMouseClicked(SubJanela_ConsultaAlunos.java:198)
at swing.SubJanela_ConsultaAlunos.access$200(SubJanela_ConsultaAlunos.java:28)
at swing.SubJanela_ConsultaAlunos$3.mouseClicked(SubJanela_ConsultaAlunos.java:125)
Coloquei somente parte do erro.