diff options
| author | sowgro <tpoke.ferrari@gmail.com> | 2023-05-23 00:39:57 -0400 | 
|---|---|---|
| committer | sowgro <tpoke.ferrari@gmail.com> | 2023-05-23 00:39:57 -0400 | 
| commit | 005c645b3cd991079dfd9bac2f207cdd2068d161 (patch) | |
| tree | ed82f11d248a1a0e08ea0ed82380913250a0f278 /src/test | |
| parent | f941b529f1cb12312041516e6799ece0f6df2cac (diff) | |
| download | NPEhero-005c645b3cd991079dfd9bac2f207cdd2068d161.tar.gz NPEhero-005c645b3cd991079dfd9bac2f207cdd2068d161.tar.bz2 NPEhero-005c645b3cd991079dfd9bac2f207cdd2068d161.zip  | |
finish gui, add new leaderboard system, redesign settings, switch lists to tables
Diffstat (limited to '')
| -rw-r--r-- | src/test/Table.java | 112 | 
1 files changed, 112 insertions, 0 deletions
diff --git a/src/test/Table.java b/src/test/Table.java new file mode 100644 index 0000000..5571ebd --- /dev/null +++ b/src/test/Table.java @@ -0,0 +1,112 @@ +package test; + +import javafx.application.Application; +import javafx.beans.property.SimpleStringProperty; +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; +import javafx.geometry.Insets; +import javafx.scene.Group; +import javafx.scene.Scene; +import javafx.scene.control.Label; +import javafx.scene.control.TableColumn; +import javafx.scene.control.TableView; +import javafx.scene.control.TextField; +import javafx.scene.control.cell.PropertyValueFactory; +import javafx.scene.layout.VBox; +import javafx.scene.text.Font; +import javafx.stage.Stage; +  +public class Table 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") +        ); +    +    public static void main(String[] args) { +        launch(args); +    } +  +    @Override +    public void start(Stage stage) { +        Scene scene = new Scene(new Group()); +        stage.setTitle("Table View Sample"); +        stage.setWidth(450); +        stage.setHeight(500); +  +        final Label label = new Label("Address Book"); +        label.setFont(new Font("Arial", 20)); +  +        table.setEditable(true); +  +        TableColumn firstNameCol = new TableColumn("First Name"); +        firstNameCol.setMinWidth(100); +        firstNameCol.setCellValueFactory( +                new PropertyValueFactory<Person, String>("firstName")); +  +        TableColumn lastNameCol = new TableColumn("Last Name"); +        lastNameCol.setMinWidth(100); +        lastNameCol.setCellValueFactory( +                new PropertyValueFactory<Person, String>("lastName")); +  +        TableColumn emailCol = new TableColumn("Email"); +        emailCol.setMinWidth(200); +        emailCol.setCellValueFactory( +                new PropertyValueFactory<Person, String>("email")); +  +        table.setItems(data); +        table.getColumns().addAll(firstNameCol, lastNameCol, emailCol); +  +        final VBox vbox = new VBox(); +        vbox.setSpacing(5); +        vbox.setPadding(new Insets(10, 0, 0, 10)); +        vbox.getChildren().addAll(label, table); +  +        ((Group) scene.getRoot()).getChildren().addAll(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); +        } +    } +} 
\ No newline at end of file  | 
