JavaFX 往表里添加数据
JavaFX 是一个用于创建富客户端应用程序的图形用户界面 (GUI) 平台。它提供了丰富的控件库和丰富的视觉效果,使得开发者可以轻松地构建漂亮和交互性强的应用程序。
本文将介绍如何使用 JavaFX 添加数据到表格中。我们将使用 TableView 控件来展示数据,并使用 ObservableList 来存储和管理数据集合。
准备工作
在开始之前,我们需要确保已经正确安装了 JavaFX,并配置好了开发环境。你可以从官方网站下载并安装 JavaFX,并设置好 JavaFX SDK 的路径。
创建 JavaFX 项目
首先,我们需要创建一个 JavaFX 项目。在你喜欢的集成开发环境 (IDE) 中,选择新建一个 JavaFX 项目,并配置好项目的名称和路径。
创建 GUI 界面
接下来,我们将创建一个简单的 GUI 界面来展示表格。
import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class TableViewExample extends Application {
private TableView<Person> tableView;
private ObservableList<Person> data;
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) {
primaryStage.setTitle("TableView Example");
// 创建表格列
TableColumn<Person, String> firstNameColumn = new TableColumn<>("First Name");
firstNameColumn.setCellValueFactory(new PropertyValueFactory<>("firstName"));
TableColumn<Person, String> lastNameColumn = new TableColumn<>("Last Name");
lastNameColumn.setCellValueFactory(new PropertyValueFactory<>("lastName"));
// 创建表格
tableView = new TableView<>();
tableView.getColumns().add(firstNameColumn);
tableView.getColumns().add(lastNameColumn);
// 创建数据集合
data = FXCollections.observableArrayList();
tableView.setItems(data);
// 创建按钮
Button addButton = new Button("Add");
addButton.setOnAction(e -> addPerson());
// 创建布局
VBox vbox = new VBox();
vbox.setSpacing(5);
vbox.setPadding(new Insets(10, 10, 10, 10));
vbox.getChildren().addAll(tableView, addButton);
// 创建场景
Scene scene = new Scene(vbox, 300, 200);
primaryStage.setScene(scene);
primaryStage.show();
}
private void addPerson() {
// 在数据集合中添加一个新的 Person 对象
data.add(new Person("John", "Doe"));
}
public static class Person {
private String firstName;
private String lastName;
public Person(String firstName, String lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
}
}
添加数据到表格
我们先创建了一个 TableView 控件,并定义了两个表格列,分别用于显示 "First Name" 和 "Last Name"。然后,我们创建了一个 ObservableList 来存储我们的数据,并将其设置为 TableView 的数据源。
接下来,我们创建了一个 "Add" 按钮,并设置它的点击事件。当用户点击按钮时,我们将在数据集合中添加一个新的 Person 对象。
private void addPerson() {
// 在数据集合中添加一个新的 Person 对象
data.add(new Person("John", "Doe"));
}
这样,当用户点击 "Add" 按钮时,我们的表格会自动更新,并显示出新添加的数据。
总结
本文介绍了如何使用 JavaFX 往表格中添加数据。我们使用 TableView 控件展示数据,并使用 ObservableList 来管理数据集合。通过添加按钮的点击事件,我们可以方便地往表格中添加新的数据。
希望本文对你理解 JavaFX 数据表格的使用有所帮助!如有任何问题,请随时向我提问。