Вы находитесь на странице: 1из 29

Professor: Pedro Henrique (pedroholi@gmail.

com) Mestrando em Modelagem Matemtica e Computacional CEFET MG

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Criando um formulrio com uma Jtable


O primeiro passo que devemos fazer criar um formulrio para adicionarmos uma Jtable.

Vamos cham-lo de ListaCidades.

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Criando um formulrio com uma Jtable


Depois que criarmos nosso formulrio vamos adicionar um Jtable nele, para isso: 1.Selecione o objeto Table na Paleta e 2.Adicione-o dentro do formulrio.

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Criando um formulrio com uma Jtable


3. Mude o nome da Jtable para TabelaCidades

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Configurando a Jtable
Agora vamos Configurar a nossa Tabela, para isso: 1.Clique com o boto direito do mouse na tabela e selecione contedo da tabela.

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Configurando a Jtable
2. Selecione a aba Colunas para que possamos editar as colunas da nossa Tabela.

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Configurando a Jtable
3. Editando uma Coluna. Selecione um coluna para que ela possa ser editada
Ttulo que aparecer para o usurio Tipo de varivel que a coluna ir receber Se redimensionvel ou no Se ela poder ser editada ou no Nmero de colunas

Obs.: Configure todas as colunas.


8

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Configurando a Jtable
4. Agora selecione a aba linhas. Exclua todas as linhas da tabela.
Nmero de linhas

Pronto a tabela esta configurada, pode clicar em fechar para voltar para o formulrio.
9

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Conectando no Banco de Dados


1. Vamos criar um objeto da Classe ConectaMySQl na classe onde criamos a jTable, para isso selecione o mdulo Cdigo-Fonte.

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

10

Conectando no Banco de Dados


2. Vamos instanciar a objeto criado no contrutor da classe.

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

11

Conectando no Banco de Dados


3. Feito os passos anteriores, vamos criar um mtodo (listarCidadesCadastradas) para listarmos todas as cidades cadastradas no banco de dados na tabela:

1. O primeiro passo agora estabelecer a conexo com o banco de dados, ento para isso adicione o seguinte cdigo:

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

12

Criando mtodo para listar dados na tabela


2. Agora crie a Query, para realizarmos a consulta no banco de dados:

3. Vamos executar a Query, para isso, primeiro devemos criar um objeto do tipo ResultSet (global):

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

13

Criando mtodo para listar dados na tabela


4. Vamos executar listarDadosCidade): a query (dentro do mtodo

5. Para inserirmos linhas dinmicamente dentro de uma Jtable devemos primeiramente criar um objeto javax.swing.table.DefaultTableModel.

Nome da Jtable criada


Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

14

Criando mtodo para listar dados na tabela


6. Agora vamos percorre nossa tabela do banco de dados adicionando os registros na tabela: 1. O primeiro passo adicionar um exeo para tratamento de erro:

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

15

Criando mtodo para listar dados na tabela


2. O segundo passo criar uma loop para percorrermos a tabela do bando de dados.

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

16

Criando mtodo para listar dados na tabela


3. O terceiro passo inserir os registros do banco de dados dentro da tabela:
Mtodo para adicionar linhas na tabela Vetor de objetos (dados inseridos na tabela)

Objeto avax.swing.table.DefaultTableModel criado para inserirmos linhas na tabela


Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Dados inseridos (campos da tabela)


17

Criando mtodo para listar dados na tabela


4. Vamos fechar a conexo estabelecida, para isso adiconaremos o seguinte cdigo (no final do mtodo listarDadosCidade):

5. Por fim, vamos chamar o mtodo criando no contrutor da classe para inserirmos os registros na tabela:

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

18

Tabela com os registros

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

19

Utilizando a Jtable para apagar os registros no banco de dados Para apagar linhas da tabela devemos utilizar o seguinte cdigo:
Vetor com as linhas selecionadas

Objeto avax.swing.table.DefaultTableModel criado para excluirmos linhas na tabela Mtodo utilizado para remover linhas de uma Jtable Loop percorrendo o vetor e removendo as linhas selecionadas
20

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Utilizando a Jtable para apagar os registros no banco de dados Para apagar linhas da tabela devemos utilizar o seguinte cdigo:
Como no podemos adicionar ou remover diretamente na tabela temos que criar um objeto DefaultTableModel que possa receber o objeto.

Nosso objeto passa a ser o dtm s para ser usado em adies e excluses de linhas.

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

21

Pegando valores de uma Jtable Para pegarmos valores dentro de uma Jtable utilizamos o mtodo getValueAt(int linha, int coluna):

Pegando o valor inserido na linha 1 coluna 3 da tabela

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

22

Excluindo o registro selecionado na Tabela no Bando de Dados


1. Primeiro vamos criar uma mtodo responsvel por excluir o registro no banco de dados (excluirRegistroTabela):

2. Vamos estabelecer a conexo com o banco de dados, ento para isso adicione o seguinte cdigo no mtodo:

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

23

Excluindo o registro selecionado na Tabela no Bando de Dados


3. Vamos pegar o contedo da coluna Cdigo, para isso vamos criar uma varivel do tipo String (codigo) recebendo o valor da tabela e uma varivel booleana verifica, para verificarmos se no ocorreu erro durante a excluso:
Mtodo para pegar a linha selecionada

Converso para String

Coluna da Tabela (Como iremos pegar o cdigo, podemos simplesmente colocar o ndice dele - 0) Obs.: para pegar a coluna basta utilizar o mtodo getSelectedColumn();
24

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Excluindo o registro selecionado na Tabela no Bando de Dados


3. Vamos criar a query para a excluso do registro:

4. E executa-l chamando o mtodo preencheDataSet da classe ConexoMySql:

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

25

Excluindo o registro selecionado na Tabela no Bando de Dados


5. Aps excluirmos o registro no banco de dados, devemos excluir a linha da tabela e fecharmos a conexo com o banco de dados, para isso vamos fazer:
Criar um objeto do tipo DefaultTableModel para a excluso da linha

Deletar a linha selecionada utilizando o mtodo removeRow(), para remover a linha e getSelectedRow(), para pegarmos a linha selecionada.

Fechando a conexo com o banco de dados


Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

26

Excluindo o registro selecionado na Tabela no Bando de Dados


5. Pronto, vamos adicionar um boto (Excluir) no formulrio e atribuirmos uma ao para ele, onde dever ser chamado o mtodo excluirRegistroTabela() :

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

27

Alterando os registro dentro de uma Jtable


Ao configuramos uma Jtable (slide 8) temos a possibilidade de incluirmos a edio de colunas, tornando-as possvel de serem editadas pela usurio:

Editvel

No Editvel

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

28

Alterando os registro dentro de uma Jtable


Exemplo:

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

29