[RESOLVIDO]Melhor forma de utilizar JTable "inteligente"?

7 respostas
D

Olá pessoal!!
Estou utilizando JPA, e em uma consutla, eu gostaria que os valores fossem apresentados em uma JTable. Até aí tudo bem.

[color=darkred]O que eu gostaria é que as minhas linhas da JTable fossem equivalentes à quantidade de dados da minha tabela.[/color]
Andei pesquisando aqui no GUJ… e encontrei este post: http://www.guj.com.br/posts/list/66149.java
Que tem este link que explica exatamente isso a partir do 9º minuto: http://netbeans.org/download/flash/netbeans_55/screencast-5.5.1-pt_BR/screencast-nb-final.html

A questão é: esta é a melhor forma para se fazer isso? Há algum jeito mais simples??
Muito obrigada…
Até mais,
Dina

7 Respostas

discorpio

Boa noite Dina.

A melhor forma de voce popular um JTable é criar uma classe extendendo (Herdando) de “AbstractTableModel”, torna-se mais dinâmico, porque voce pode inclusive criar apenas um JTable e várias classes herdando de AbstractTableModel populando tabelas do banco de dados diferentes, e na hora de popular o JTable, basta chamar o seu método setModel(TabelaModel), apontando para a classe AbstractTableModel respectiva.

Conversas a parte, eu dei um exemplo aqui neste Forum exatamente neste link abaixo, no seu post final.

http://www.guj.com.br/posts/list/203514.java

Dê uma olhadinha é vê se te interessa.

rogelgarcia

Offtopic:
Olha, temos progressos aqui… já tá no JPA!

Muito bom…

:smiley:

Sobre o Table Model… tem isso aqui também… http://www.guj.com.br/posts/list/15/199067.java#1001295

D

:oops: Rogelll… Obrigada…!!:slight_smile:
Este progresso devo em grande parte (grande parte mesmo) a vc!!! :slight_smile: Obrigada por toda a ajuda!
Obrigada pelo link nele tem muitas informações referente a este assunto!!!:slight_smile:

Obrigada novamente aos dois,
Até mais,
Dina

D

Pessoal…
Depois de algumas semanas, eu acabei vendo uma forma de fazer isso de uma forma bem simples, segue abaixo:
Eu tenho uma JTable já criada no meu View, no meu caso chamada jtConsulta

List resultados = daoPac.consultarTodos();
        int tamanho = resultados.size();

        String[] columnNames = { "Nome","Telefone","Endereço","Plano"};

        //TAMANHO É O NUMERO DE LINHAS E 4 É O NUMERO DE COLUNAS
        JTable modelo = new JTable(tamanho,4);


        TableModel tm = modelo.getModel();
        jtConsulta.setModel(tm);

Com isso, eu consigo ter o número de linhas = ao número de resultados obtidos.

[color=red][b]O único problema é que com isso, a minha JTable fica com as colunas com a nomenclatura: A B C D ao invés de ter os nomes que eu gostaria.[b][/color]
Gostaria de saber se alguém sabe uma forma de renomear as colunas…?
Grata!!
Dina

D

Pessoal!!
Resolvi o problema!!!
:slight_smile:
Com isso, não preciso ter mais a String com os nomes das colunas. As colunas devem ser definidas na interface gráfica do Netbeans (por exemplo), renomeando as colunas da tabela.

List resultados = daoPac.consultarTodos();   
int tamanho = resultados.size();   
  
//TAMANHO É O NUMERO DE LINHAS E 4 É O NUMERO DE COLUNAS   
JTable modelo = new JTable(tamanho,4);   
  
  
TableModel tm = modelo.getModel();   

//Basta adicionar a linha abaixo:
        jtConsulta.setAutoCreateColumnsFromModel(false);
jtConsulta.setModel(tm);

Até mais pessoal!

Marky.Vasconcelos

Mas o importante sobre JTables é aprender a escrever seu proprio TableModel, voce ainda esta usando DefaultTableModel.

D

Hummm… é mesmo!!!
Vc tem razão…

[b]Obrigada Mark

Criado 14 de abril de 2010
Ultima resposta 7 de mai. de 2010
Respostas 7
Participantes 4