0% acharam este documento útil (0 voto)
106 visualizações

Usando Tabelas Com Javafx Tableview HTML

O documento descreve como usar tabelas (TableView) no JavaFX para exibir dados. A TableView exibe linhas e colunas de dados e requer que os itens sejam do mesmo tipo declarado para a tabela. As colunas são definidas usando TableColumn e precisam saber como lidar com cada linha de dados através de fabricas de células. O documento fornece um exemplo inicial de como configurar uma TableView para exibir uma lista de objetos.

Enviado por

Tadeu Amaral
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
106 visualizações

Usando Tabelas Com Javafx Tableview HTML

O documento descreve como usar tabelas (TableView) no JavaFX para exibir dados. A TableView exibe linhas e colunas de dados e requer que os itens sejam do mesmo tipo declarado para a tabela. As colunas são definidas usando TableColumn e precisam saber como lidar com cada linha de dados através de fabricas de células. O documento fornece um exemplo inicial de como configurar uma TableView para exibir uma lista de objetos.

Enviado por

Tadeu Amaral
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 4

More

Aprendendo JavaFX
Início O que é JavaFX? Sobre esse blog

Curta nossa página! Arquivo do bl


► 2018 (1)

► 2017 (15)
Mais Java aqui ►
► 2016 (11)

FXApps ►
► 2015 (6)
Microblog application using ▼
▼ 2014 (20)
Quarkus and template (Qute)

► Dezem
Aprendendo JavaEE ►
► Agosto
Aprenda Quarkus: a
revolucionária ferramenta Java ►
► Julho (2
para microservices

► Junho
Aprendendo JavaSE ►
► Maio (1
Debugando com Java

▼ Abril (2
Conhecendo os projetos da Usando
comunidade JBoss Table
Livro gratuito sobre Wildfly
24 de abr. de 2014 Escreve
usan

Bombando essa semana! Usando Tabelas com JavaFX: TableView ►


► Março

► Fevere
Sua primeira aplicação em Um dos controles mais utilizados em aplicações cotidianas é a Tabela. Com controles que permitam visualizar dados em
JavaFX usando Eclipse forma de tabelas podemos mostrar: lista de funcionários, de produtos, dados já ordenados em planilhas, informações diversas ►
► 2013 (6)
Para aprender como iniciar com que vêm de algum servidor.
o JavaFX 8, vejam esse artigo ►
► 2012 (8)
Veja um CRUD completo com
Nesse aspecto, estamos bem "servidos" com o TableView do JavaFX. A TableView, juntamente com a classe TableColumn,
JavaFX 8! Nessa primeira facilita visualizações de dados em uma aplicação JavaFX.
postagem vamos mostrar ... Nesse artigo, iremos mostrar o básico sobre criação de tabelas usando JavaFX.

Introdução ao FXML: Criando


Visão geral da classe TableView
interfaces em JavaFX usando TableView é mais um controle de interface. Para começarmos falando dela, veja a seguinte imagem:
XML e o Scene Builder
Veja aqui um CRUD com
JavaFX Até agora nossas
postagem utilizaram código Java
na criação das interfaces
gráficas(GUI) . O uso de Java
po...

As janelas de dialogs do JavaFX


Uma das maiores necessidades
do JavaFX foi a adição de uma
biblioteca consistente para
termos acesso a diálogos.
Aquelas janelinhas que apar...

Usando Tabelas com JavaFX:


TableView
Um dos controles mais
utilizados em aplicações
cotidianas é a Tabela. Com
controles que permitam
visualizar dados em forma de
tabelas podemo...

Threads e JavaFX
Uma das coisas mais comuns Uma tabela tem colunas e linhas. Quando configuramos as colunas de uma TableView, temos que também dizer como cada
que fazemos em nossa
aplicação é executar algo coluna vai representar os dados da tabela.
"pesado". Por exemplo, Itens
usualmente lemos arquivos Os dados devem ser do tipo da declaração da tabela. Por exemplo, se declaramos uma tabela usando:
gigante...
TableView<Pessoa> tabela = new TableView<>();

A tabela só irá aceitar dados do tipo Pessoa:

List<Pessoa> pessoas = ....


tabela.setItems(FXCollections.observableArrayList(pessoas));

Caso você tente inserir dados de outro tipo, simplesmente você terá um erro de compilação.
Colunas
As colunas são definidades pela classe TableColumn e devem saber lidar com cada linha da tabela. Isso é feito através de
fábricas de células, que são classes que recebem cada item da tabela e retornam uma célula da tabela. A fábrica você deve
fornecer ou usar algumas colunas que já sabem fabricar as células de um tipo já conhecido. Veja um exemplo onde criamos
colunas para as propriedades nome, idade e email de uma pessoa:

TableColumn<Pessoa, String> colunaNome = new TableColumn<>("Nome");


TableColumn<Pessoa, String> colunaIdade = new TableColumn<>("Idade");
TableColumn<Pessoa, String> colunaEmail = new TableColumn<>("E-mail");
tabela.getColumns().addAll(colunaNome, colunaIdade, colunaEmail);
Por exemplo, para acessar as propriedades do objeto Pessoa, podemos usar uma fábrica pronta, a PropertyValueFactory.
Abaixo criamos as fábricas para as propriedades (atributos) da classe pessoa, note a String que ele recebe no construtor que
é o nome da propriedade que declaramos na classe:

colunaNome.setCellValueFactory(new PropertyValueFactory<>("nome"));
colunaIdade.setCellValueFactory(new PropertyValueFactory<>("idade"));
colunaEmail.setCellValueFactory(new PropertyValueFactory<>("email"));

Um exemplo completo de uso da TableView


Abaixo temos um código simples que mostra como mostrar uma lista de pessoas em uma TableView. Veja que não é nada
sofisticado, mas com esse código, você já estará apto a construir suas próprias aplicações que usam tabelas.

import java.util.Arrays;
import java.util.List;
import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.scene.Scene;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.stage.Stage;

/**
*
* @author william
*/
public class Post13Tabelas extends Application {

@Override
public void start(Stage primaryStage) {
List pessoas = Arrays.asList(
new Pessoa("William", 32, "william@email.com"),
new Pessoa("Luana", 17, "luana@email.com"),
new Pessoa("Maria", 12, "maria@email.com"),
new Pessoa("João", 15, "joao@email.com"),
new Pessoa("Antônio", 28, "antonio@email.com"),
new Pessoa("Teles", 17, "teles@email.com"),
new Pessoa("Eduan", 30, "eduan@email.com"),
new Pessoa("Gabu", 22, "gabu@email.com")
);

TableView tabela = new TableView<>();


TableColumn colunaNome = new TableColumn<>("Nome");
TableColumn colunaIdade = new TableColumn<>("Idade");
TableColumn colunaEmail = new TableColumn<>("E-mail");

colunaNome.setCellValueFactory(new PropertyValueFactory<>("nome"));
colunaIdade.setCellValueFactory(new PropertyValueFactory<>("idade"));
colunaEmail.setCellValueFactory(new PropertyValueFactory<>("email"));

tabela.setItems(FXCollections.observableArrayList(pessoas));
tabela.getColumns().addAll(colunaNome, colunaIdade, colunaEmail);

primaryStage.setScene(new Scene(tabela));
primaryStage.setWidth(250);
primaryStage.setHeight(300);
primaryStage.setTitle("Tabelas no JavaFX");
primaryStage.show();
}

public static class Pessoa {

private String nome;


private int idade;
private String email;

public Pessoa(String nome, int idade, String email) {


this.nome = nome;
this.idade = idade;
this.email = email;
}

public String getNome() {


return nome;
}

public void setNome(String nome) {


this.nome = nome;
}

public int getIdade() {


return idade;
}

public void setIdade(int idade) {


this.idade = idade;
}
public String getEmail() {
return email;
}

public void setEmail(String email) {


this.email = email;
}

}
}

Conclusão
Nesse breve artigo nós mostramos como criar tabelas em JavaFX. Claro que o tópico é extenso e podemos voltar ao tópico
no futuro.

Nosso código agora é usando Java 8 e Netbeans 8. Veja o código no github.

Postado por William às 22:04

Marcadores: básico, java, javafx, tabela, tableview, tutorial

15 comentários:

Unknown 12 de março de 2015 12:39

Bem explicado.....
Responder

Davi Pires de Castro 20 de novembro de 2015 09:52


Como faço para pegar os atributos de uma super classe?
Responder

Respostas

William 20 de novembro de 2015 10:42


Acho que usando o que está descrito aqui:

http://fxapps.blogspot.com.br/2012/09/showing-object-properties-in-tableview.html

Responder

Unknown 24 de março de 2016 10:50


Ótimo tópico. Parabéns!
Poderia definir as propriedades na classe Pessoa também, certo?
Abs
Responder

Unknown 4 de maio de 2016 14:42

Boa noite,

COMO FAÇO PRA PEGAR O VALOR DE UMA TABELA numa determina Row e Columa?
Exemplo em tua tabela, como faço pra pegar o Email da Maria em String.

Agradeceria se me ajudassem nisso.


Responder

Unknown 5 de maio de 2016 17:43


É possível selecionar os dados de uma coluna especica dentro de uma tabela para mostra-lo em um textfield?

Responder

Unknown 5 de maio de 2016 17:44


É possível selecionar os dados de uma coluna especica dentro de uma tabela para mostra-lo em um textfield?

Responder

Respostas

William 22 de dezembro de 2016 15:22


você pode passar sobre os dados da tabela e pegar aquela coluna e colocar no text field - mas pergunta no grupo
sobre JavaFX

Responder

Unknown 29 de junho de 2016 06:52


Como faz para inserir imagens em uma coluna? Preciso disso para ontem, me ajuda \0/
O caminho delas está no banco de dados, e eu carrego tudo numa List para mostrar na tabela. A interface foi toda feita no Scene
Builder.
Responder

Respostas

William 22 de dezembro de 2016 15:21

Acho que é possível usando uma factory pra lista, mas dá uma olhada no grupo sobre JavaFX

Responder

Helder 26 de setembro de 2016 14:33

Gabu, de Gabumon?
Responder

Respostas

William 22 de dezembro de 2016 15:21

Sim, é um bróder meu que é o gabumon

Responder

Marcos Ferreira 11 de março de 2017 04:25


Valeu pelo conteúdo William!

Apesar da documentação do JavaFX ser ótima, é sempre bom ter um exemplo prático com umas dicas de alguém que entende.

Valeu mesmo!!!

Sucesso para você!


Responder

Gabriel 24 de maio de 2017 19:00


Bom artigo, rápido e direto ao ponto.
Eu fiz uma postagem mais extensa sobre TableView no medium, entrando em alguns pontos mais complexos como Checkbox e
TextField nas colunas
https://medium.com/@antonio.gabriel/javafx-trabalhando-com-tableview-5cc1065babab

Att

Responder

Unknown 30 de setembro de 2018 15:54


como posso quebrar um texto no título de uma tablecolumn, para ficar em duas linhas ?

Responder

Digite seu comentário...

Comentar como: Conta do Goog

Publicar Visualizar

Postagem mais recente Página inicial Postagem mais antiga

Assinar: Postar comentários (Atom)

Tema Simples. Tecnologia do Blogger.

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy