Sei sulla pagina 1di 29

Pgina 1

Componente: JTable
A classe JTable utilizada para vizualizar dados em grid no Swing, o JTable possui um pacote com diversas classes para sua utilizao. A JTable um componente MVC: o seu trabalho dividido em 3 partes: Model: a parte que cuida dos dados, quem controla e distribui os dados na JTable. implementado pela interface TableModel ( AbstractTableModel e DefaultTableModel ). Ela responsavel por fornecedor os dados para a tabela, a qual requisitar os dados atravs do mtodo getValueAt, informando a linha e a coluna. Este mtodo retorna um Object, ou seja, um objeto qualquer, que pode ser um Integer, uma String ou uma outra classe que voc tenha implementado.
Pgina 2

Componente: JTable
View: a parte que cuida da apresentao. implementado pela interface CellRenderer. como a apresentao dada celula a celula na tabela, o renderer deve ser fornecedido para uma celula especifica. Na JTable possivel fornecer tanto um renderer para a tabela inteira como para uma coluna especifica. Assim como na tablemodel requisitar o valor na linha e coluna especifica, aqui ele requisitara o objeto que ira apresentar o dados, passando como parametro a linha, a coluna o valor (object), a tabela (jTable), se esta celula esta selecionada e se ela celula possui o foco.
Pgina 3

Componente: JTable
Controller: a parte que controla a apresentao dos dados na view. a prpria JTable. O JTable um componente visual utilizado para armazenar dados em forma de tabelas com cabecalho, linhas e colunas.
Cria a tabela com cabecalho e linhas linha[][] matriz de String cabecalho[] vetor de String linha[][] matriz de Object cabecalho[] vetor de Object

JTable( Object[][] linha, Object[] cabecalho) JTable(linha,cabecalho); JTable (linha, cabecalho)

Pgina 4

Tabela
Para se utilizar o componente JTable e necessrio inserir um componente JTable, disponvel na palettte, configurar as informaes de cabealho da tabela atravs na propriedade model. As informao das linhas da tabelas so inseridos pelos mtodos addRow(), que sero mostradas nas prximas transparncias .
Pgina 5

Tabela
A propriedade model disponibiliza a opo Table Model atravs da interface Table Settings, onde e possvel configurar as colunas da tabelas com rotulo, tipo de dados, editveis.

Pgina 6

Tabela
A propriedade Default Values e possvel definir informaes padres e quantidade de linhas visveis.

Pgina 7

Tabela:
Tendo nossa JTable criada, podemos trabalhar em
cima do modelo (TableModel) que ela criou. Para obtermos o modelo dessa JTable criada, basta

chamarmos o mtodo getModel() que retorna uma


instncia de classe que implementa o TableModel. O DefaultTableModel uma classe de javax.swing.table e implementa a interface TableModel, fornecedo-nos todo o controle dos dados da JTable.

Pgina 8

Tabela: mtodos
getValueAt(): obtem o valor de uma determinada linha e coluna na JTable. setValueAt(): seta o valor em uma determinada linha e coluna na JTable. addRow(): adiciona uma nova linha na JTable. Recebe um array simples. addColumn(): adiciona uma nova coluna no modelo.

Pgina 9

Tabela:
Ao inserir uma JTable inserido o componente JScrollPane, ou barra de rolagem para visualizao dos dados da tabela. OBS: Ao selecionar a tabela verifique se o que esta selecionado no o JSrollPane, porque o JScrollPane no tem a propriedade model. possvel verificar atravs do Inspector.

Pgina 10

Tabela: DefaultTableModel()
Para disponibilizar a tabela para a aplicao em Java e necessrio recuperar o modelo da tabela atravs do mtodo defaultTableModel.

Pgina 11

Tabela: DefaultTableModel()
Para disponibilizar a tabela para a aplicao em Java e necessrio recuperar o modelo da tabela atravs do mtodo defaultTableModel.

Pgina 12

Tabela: DefaultTableModel()
Para disponibilizar a tabela para a aplicao em Java e necessrio recuperar o modelo da tabela atravs do mtodo defaultTableModel.

Pgina 13

Tabela: DefaultTableModel()
Para disponibilizar a tabela para a aplicao em Java e necessrio recuperar

Pgina 14

Tabela: DefaultTableModel()
Para mostrar o resultado de uma consulta no banco de dados necessrio desenvolver um mtodo novo mtodo que executa a contulta no banco utilizando o metodo executeQuery() e retornando os dados atraves da variavel ResultSet.

Pgina 15

Tabela: DefaultTableModel()
Depois, instancia a classe DB e chama o mtodo retornarDados(), o resultado deve ser tratado pelo metodos .next() e .getString().

Pgina 16

Tabela: Alterar valor

Pgina 17

Tabela: Alterar valor


Mtodo utilizado para definir o comprimento de uma coluna. .setPreferredWidth().

Pgina 18

Tabela: removerLinha

Pgina 19

Tabela - inserir
import javax.swing.table.DefaultTableModel; private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: // Obtem o modelo da JTable DefaultTableModel modelo1 = (DefaultTableModel)jTable1.getModel(); // Adiciona uma nova linha em branco no modelo
modelo1.addRow( new String [] {jTextField1.getText(),jTextField2.getText() ,jTextField3.getText()});

int x = modelo1.getRowCount(); modelo1.setRowCount(x); modelo1.addRow( new String [] { jTextField1.getText(), jTextField2.getText(), jTextField3.getText() } ); show(null,"ok"+x,"Form OK",JOptionPane.INFORMATION_MESSAGE);

Pgina 20

Tabela - inserir
private javax.swing.JTable jTable1;

import javax.swing.table.DefaultTableModel;

private void inserirActionPerformed(java.awt.event.ActionEvent evt) {

// Obtem o modelo da JTable


DefaultTableModel modelo1 = (DefaultTableModel)jTable1.getModel();

// Adiciona uma nova linha em branco no modelo


modelo1.addRow( new String [] {"200","Zilda Meneses" ,"Ipatinga"});

Pgina 21

Tabela - Remover
public void removeLinha(int linha){ // Obtem o modelo da JTable
DefaultTableModel modelo = (DefaultTableModel)jTable1.getModel();

// Remove a linha modelo.removeRow(linha); }


private void deleteActionPerformed(java.awt.event.ActionEvent evt) {

// Obtem a linha selecionada na tabela e chama o mtodo // para excluir a linha

int linhaSelecionada = jTable1.getSelectedRow();


// Verificamos se existe realmente alguma linha selecionada

if( linhaSelecionada < 0 ){ return; }else{ // Remove a linha do modelo removeLinha(linhaSelecionada); } }


Pgina 22

Seleo da Tabela

Pgina 23

Seleo da Tabela
Os Mtodos get e setColumnSelectionAllowed recebe os valores true e false para habilitar ou desabilitar a seleo de coluna. Este cdigo pode ser inserido dentro de um boto ou checkbox.

Pgina 24

Seleo da Tabela
Os Mtodos get e setRowSelectionAllowed recebe os valores true e false para habilitar ou desabilitar a seleo de coluna. Este cdigo pode ser inserido dentro de um boto ou checkbox.

Pgina 25

Seleo da Tabela
Os Mtodos get e setCellSelectionEnabled recebe os valores true e false para habilitar ou desabilitar a seleo de coluna. Este cdigo pode ser inserido dentro de um boto ou checkbox.

Pgina 26

Seleo da Tabela
Os Mtodos get e setSelectionMode recebe os valores para definir o tipo de modelo disponivel para a tabela. ListSelectionModel.__SELECTION.

Pgina 27

Seleo da Tabela
O Mtodos getValueAt() recebe as informaes de linha e coluna retornando o contedo armazenado na tabela.

Pgina 28

Seleo da Tabela
Para disponibilizar o evento quando o usurio der um click no mouse sobre a tabela. Selecione a tabela, com o boto direito do mouse, escolha events, mouse (mouseClicked ou mousePrassed).

Pgina 29

Potrebbero piacerti anche