Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import javafx.application.Application;
- import javafx.beans.property.SimpleStringProperty;
- import javafx.collections.FXCollections;
- import javafx.collections.ObservableList;
- import javafx.scene.Scene;
- import javafx.scene.control.Label;
- import javafx.scene.control.TableCell;
- import javafx.scene.control.TableColumn;
- import javafx.scene.control.TableView;
- import javafx.scene.control.cell.PropertyValueFactory;
- import javafx.scene.layout.HBox;
- import javafx.scene.layout.VBox;
- import javafx.scene.text.Font;
- import javafx.stage.Stage;
- import javafx.util.Callback;
- public class TableViewSample extends Application {
- private TableView<Person> table = new TableView<Person>();
- private final ObservableList<Person> data = FXCollections.observableArrayList(new Person("Jacob", "Smith",
- "jacob.smith@example.com"), new Person("Isabella", "Johnson", "isabella.johnson@example.com"), new Person(
- "Ethan", "Williams", "ethan.williams@example.com"), new Person("Emma", "Jones", "emma.jones@example.com"),
- new Person("Michael", "Brown", "michael.brown@example.com"));
- final HBox hb = new HBox();
- public static void main(String[] args) {
- launch(args);
- }
- @Override
- public void start(Stage stage) {
- stage.setTitle("Table View Sample");
- stage.setWidth(450);
- stage.setHeight(550);
- final Label label = new Label("Address Book");
- label.setFont(new Font("Arial", 20));
- table.setEditable(true);
- table.getSelectionModel().setCellSelectionEnabled(true);
- for (int i = 0; i < 20; ++i) {
- TableColumn<Person, String> firstNameCol = new TableColumn<>("First Name");
- firstNameCol.setCellValueFactory(new PropertyValueFactory<Person, String>("firstName"));
- firstNameCol.setCellFactory(new Callback<TableColumn<Person, String>, TableCell<Person, String>>() {
- @Override
- public TableCell<Person, String> call(TableColumn<Person, String> arg0) {
- TableCell cell = new TableCell<>();
- cell.setText("This is a test sample");
- return cell;
- }
- });
- table.getColumns().add(firstNameCol);
- }
- table.setItems(data);
- final VBox vbox = new VBox();
- vbox.getChildren().addAll( table);
- Scene scene = new Scene(vbox);
- stage.setScene(scene);
- stage.show();
- }
- public static class Person {
- private final SimpleStringProperty firstName;
- private final SimpleStringProperty lastName;
- private final SimpleStringProperty email;
- private Person(String fName, String lName, String email) {
- this.firstName = new SimpleStringProperty(fName);
- this.lastName = new SimpleStringProperty(lName);
- this.email = new SimpleStringProperty(email);
- }
- public String getFirstName() {
- return firstName.get();
- }
- public void setFirstName(String fName) {
- firstName.set(fName);
- }
- public String getLastName() {
- return lastName.get();
- }
- public void setLastName(String fName) {
- lastName.set(fName);
- }
- public String getEmail() {
- return email.get();
- }
- public void setEmail(String fName) {
- email.set(fName);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement