Use the new JavaFX UI components in Java 13 to achieve user interface interaction
With the release of Java 13, new features and functions of the JavaFX UI framework also come. JavaFX in the new version introduces some exciting new components, making user interface interaction more flexible and convenient. This article will introduce how to use the new components in JavaFX 13 to achieve user interface interaction, and attach some code examples to help readers better understand.
First, let’s take a look at one of the new components in JavaFX 13 - TreeTableView. TreeTableView is an extension of TableView that can present tree-structured data. It can display multi-level tables and allow users to expand or collapse tree nodes. The following is a simple code example that shows how to create a basic TreeTableView:
import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.TreeItem; import javafx.scene.control.TreeTableColumn; import javafx.scene.control.TreeTableView; import javafx.stage.Stage; public class TreeTableViewExample extends Application { @Override public void start(Stage primaryStage) throws Exception { TreeTableView<String> treeTableView = new TreeTableView<>(); TreeTableColumn<String, String> nameColumn = new TreeTableColumn<>("Name"); nameColumn.setCellValueFactory(param -> param.getValue().getValue()); TreeTableColumn<String, String> valueColumn = new TreeTableColumn<>("Value"); valueColumn.setCellValueFactory(param -> param.getValue().getValue()); TreeItem<String> rootItem = new TreeItem<>("Root"); rootItem.getChildren().add(new TreeItem<>("Item 1")); rootItem.getChildren().add(new TreeItem<>("Item 2")); treeTableView.setRoot(rootItem); treeTableView.getColumns().addAll(nameColumn, valueColumn); Scene scene = new Scene(treeTableView, 300, 200); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } }
Run the above code and a simple tree table containing a root node and two child nodes will be displayed in the window.
Another new JavaFX 13 component worth paying attention to is Spinner. Spinner is a component that allows you to select values using the up and down buttons. It can be used to accept user input or display a numerical value selected from a range. The following is a simple code example that shows how to create a Spinner and get its selection value:
import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Spinner; import javafx.stage.Stage; public class SpinnerExample extends Application { @Override public void start(Stage primaryStage) throws Exception { Spinner<Integer> spinner = new Spinner<>(1, 10, 5, 1); spinner.getValueFactory().valueProperty().addListener((observable, oldValue, newValue) -> System.out.println("Selected value: " + newValue)); Scene scene = new Scene(spinner, 200, 50); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } }
Run the above code, a Spinner with up and down buttons will be displayed in the window, and as the button is clicked Print the selected value.
In JavaFX 13, some other new components and features are also introduced. These components and features are designed to provide better user interface interactivity and a better development experience. For example, the new Dialog API makes creating and managing dialog boxes easier and more intuitive. Try these new components and features to further enhance your app's user interface.
In summary, the new components and features introduced in JavaFX 13 make user interface interaction more flexible and convenient. This article introduces sample code using the TreeTableView and Spinner components in JavaFX 13 and shows their basic usage. Readers can further explore other new components and features in JavaFX 13 based on their own needs and ideas to achieve better user interface interaction.
The above is the detailed content of Use new JavaFX UI components in Java 13 for user interface interactions. For more information, please follow other related articles on the PHP Chinese website!