首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在JavaFX中使用字符串数组列表填充TableView

在JavaFX中,可以使用字符串数组列表来填充TableView。以下是一种实现方法:

  1. 首先,创建一个TableView对象和一个TableColumn对象,用于显示字符串数组列表的数据。
代码语言:java
复制
TableView<String[]> tableView = new TableView<>();
TableColumn<String[], String> column = new TableColumn<>("数据");
  1. 然后,设置TableColumn的CellValueFactory,用于从字符串数组中提取数据并显示在TableView中。
代码语言:java
复制
column.setCellValueFactory(cellData -> {
    String[] rowData = cellData.getValue();
    if (rowData != null && rowData.length > 0) {
        return new SimpleStringProperty(rowData[0]);
    } else {
        return new SimpleStringProperty("");
    }
});
  1. 接下来,创建一个ObservableList对象,用于存储字符串数组列表的数据。
代码语言:java
复制
ObservableList<String[]> data = FXCollections.observableArrayList();
  1. 将数据添加到ObservableList中。
代码语言:java
复制
String[] dataRow1 = {"数据1"};
String[] dataRow2 = {"数据2"};
data.add(dataRow1);
data.add(dataRow2);
  1. 最后,将ObservableList设置为TableView的数据源。
代码语言:java
复制
tableView.setItems(data);

完整的示例代码如下:

代码语言:java
复制
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.TableColumn;
import javafx.scene.control.TableView;
import javafx.stage.Stage;

public class TableViewExample extends Application {

    @Override
    public void start(Stage primaryStage) {
        TableView<String[]> tableView = new TableView<>();
        TableColumn<String[], String> column = new TableColumn<>("数据");
        column.setCellValueFactory(cellData -> {
            String[] rowData = cellData.getValue();
            if (rowData != null && rowData.length > 0) {
                return new SimpleStringProperty(rowData[0]);
            } else {
                return new SimpleStringProperty("");
            }
        });

        ObservableList<String[]> data = FXCollections.observableArrayList();
        String[] dataRow1 = {"数据1"};
        String[] dataRow2 = {"数据2"};
        data.add(dataRow1);
        data.add(dataRow2);

        tableView.setItems(data);
        tableView.getColumns().add(column);

        Scene scene = new Scene(tableView);
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

这样,就可以在JavaFX中使用字符串数组列表填充TableView了。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 领券