Prévia do material em texto
TABELAS JTABLE Utilizado para exibir dados de modo mais organizado JTABLE Utilizado para exibir dados de modo mais organizado Execute o código. Veja que você é capaz de inserir dados na tabela, mas não é possível alterar o título das colunas JTABLE 4 Assim como o JList, o JTable possui a propriedade model que pode ser alterada. JTABLE 5 Clique para abrir essa propriedade CONFIGURAÇÃO DA TABELA 6 COLUNA – o valor em cada linha define a ordem de exibição das colunas quando o aplicativo for executado. TÍTULO – nesse campo, você poderá alterar o conteúdo, definindo o texto que aparecerá no topo de cada coluna. Veja a Figura 14. TIPO – clicando nessa opção, você verá as diversas possibilidades para esse campo. As principais são: Objeto, String, Boleano e Inteiro. EDITÁVEL – esse checkbox define se o campo estará disponível para edição ou não. Caso não esteja marcado, o usuário não poderá alterar o conteúdo da coluna na aplicação. JTABLE 7 Clique para abrir essa propriedade Aqui é possível alterar a quantidade de linhas e colunas da tabela JTABLE 8 Altere a quantidade de linhas e colunas e clique OK para ver o resultado JTABLE 9 Na coluna Título, é possível modificar o nome exibido no cabeçalho de cada coluna JTABLE 10 É possível também alterar o tipo de dado que será exibido em cada uma das colunas VALORES PADRÃO 11 Na aba “Valores padrão” é possível definir o conteúdo inicial de cada coluna JTABLE 12 Porém, em uma aplicação prática, nosso interesse maior é adicionar os dados dinamicamente na tabela. Como fazer isso? Vamos, inicialmente, alterar nossa aplicação para parecer como o exemplo abaixo, com nossa tabela contendo 2 colunas (Nome, Telefone) e 5 linhas. Todas as linhas devem estar com opção “Editável” desmarcada. JTABLE Altere o nome das variáveis para facilitar o desenvolvimento: jTextField1 alterar para nome jTextField2 alterar para telefone jTable1 alterar para tabela JTABLE 14 Em seguida, devemos criar um atributo do tipo TableModel para poder manipular o conteúdo da tabela. O atributo linhas é para nos orientar qual a próxima linha livre da tabela, onde poderemos inserir dados: JTABLE 15 O método ExemploTabela() é o que chamamos de construtor da classe. Ele é SEMPRE executado toda vez que um objeto do tipo da classe é criado. Nesse caso, o método foi criado automaticamente pelo Netbeans, mas iremos incluir algumas novas linhas de código: JTABLE 16 O método ExemploTabela() é o que chamamos de construtor da classe. Ele é SEMPRE executado toda vez que um objeto do tipo da classe é criado. Esse método é criado automaticamente pelo Netbeans, mas iremos incluir algumas linhas de código: Essa linha atribui o modelo da tabela ao atributo m criado por nós. Com isso poderemos alterar o conteúdo da nossa tabela JTABLE 17 O método ExemploTabela() é o que chamamos de construtor da classe. Ele é SEMPRE executado toda vez que um objeto do tipo da classe é criado. Esse método é criado automaticamente pelo Netbeans, mas iremos incluir algumas linhas de código: Atribuir o valor 0 à variável linhas indica que a próxima posição livre da tabela, onde podemos incluir dados é a primeira posição (posição 0) JTABLE Vamos agora adicionar ação ao botão Cadastrar. Clique com o botão direito em cima do botão e siga o processo padrão que já conhecemos: JTABLE O modelo da tabela funciona como uma matriz e o acesso aos seus elementos é feito através dos índices de linha e coluna 0 1 2 3 4 0 1 JTABLE Para adicionar um elemento à tabela, é utilizado o método do modelo de tabela: setValueAt(valor, linha, coluna) 0 1 2 3 4 0 1 JTABLE Para adicionar um elemento à tabela, é utilizado o método do modelo de tabela: setValueAt(valor, linha, coluna) 0 1 2 3 4 0 1 Para adicionar um elemento nessa posição, devemos fazer então: m.setValueAt(“Alba”, 3, 0) JTABLE Como a inclusão de dados será feita automaticamente, ao clicar no botão Cadastrar, devemos manter um registro de qual a próxima posição livre na tabela. Para isso que é utilizado o atributo linhas que criamos anteriormente. 0 1 2 3 4 0 1 JTABLE O código do nosso botão fica da seguinte forma: Na primeira linha, atribuímos à próxima posição livre, na coluna 0, o valor existente na caixa de texto nome JTABLE O código do nosso botão fica da seguinte forma: Na segunda linha, atribuímos à próxima posição livre, na coluna 1, o valor existente na caixa de texto telefone JTABLE O código do nosso botão fica da seguinte forma: Na terceira linha, incrementamos a variável linhas para indicar qual a próxima posição livre na tabela. JTABLE Teste o exemplo! JTABLE Como nossa tabela possui uma quantidade fixa de linhas (um limite), devemos, de alguma forma, impedir que sejam incluídos valores além do limite. O método getRowsCount da tabela, nos retorna a quantidade de linhas disponíveis. A partir dela, poderemos realizar um teste: JTABLE Para completar, vamos apenas limpar os campos de texto para a inserção dos próximos valores: JTABLE Teste novamente o aplicativo completo! Página 1 Página 2 Página 3 Página 4 Página 5 Página 6 Página 7 Página 8 Página 9 Página 10 Página 11 Página 12 Página 13 Página 14 Página 15 Página 16 Página 17 Página 18 Página 19 Página 20 Página 21 Página 22 Página 23 Página 24 Página 25 Página 26 Página 27 Página 28 Página 29