Abrindo a tela de cadastro apartir do jtable[Resolvido]

3 respostas
Dani_Gomes

Tenho meu jtable, que busca os dados que vem do banco, estou querendo que ao dar dois cliques no jtable abra minha tela de cadastro com os dados que eu selecionei. Porém não estou conseguindo fazer isto.
Estou usando o seguinte código:

if (evt.getClickCount()==2) {
            tblDados.getModel();
            String idLinha=(String) modelo.getValueAt(tblDados.getSelectedRow(),1);
            try {
                new cadastro_Aluno().tableConsult(idLinha);
            } catch (Exception ex) {
                Logger.getLogger(SubJanela_ConsultaAlunos.class.getName()).log(Level.SEVERE, null, ex);
            }
        }

3 Respostas

fernandopaiva

Simples.

//Tela que quero abrir
public class TelaAbrir extends JDialog{

      public void campoJTable(String c){
          campoJTable.setText(c);
      }
}

//tela q tem o valor da jtable
TelaAbrir ta = new TelaAbrir(null, true);
ta.campoJTable(tabela.getValueAt(tabela.getSelectedRow(), 1);
ta.setVisible(true);

eh isso…

t+ e boa sorte.

Dani_Gomes

Tá dando um erro:

09/12/2011 00:13:48 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 javax.swing.JTable.getValueAt(JTable.java:2686)
	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)
	at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:253)

Este erro acontece no meu tablemodel, que está assim:

public Object getValueAt(int linha, int coluna) {
        switch(coluna){
            case 0:
                return clientes.get(linha).getCodigo();
            case 1:
                return clientes.get(linha).getNome();
            case 2:
                return clientes.get(linha).getDataNascimento();
            case 3:
                return clientes.get(linha).getReturnfoto();
            default:
                return null;
        }
    }

Se puderes me ajudar.

Dani_Gomes

Consegui resolver, o erro estava na minha chamada do construtor e outros métodos que tinha no meu tablemodel.
Obrigado fernandopaiva.
Agora está tudo funcionando direitinho.

Criado 7 de dezembro de 2011
Ultima resposta 9 de dez. de 2011
Respostas 3
Participantes 2