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

在TableView中显示ArrayList<List<String>>的值(JavaFX)

在JavaFX中,可以使用TableView来显示ArrayList<List<String>>的值。TableView是一个可编辑的表格视图,可以用于显示和编辑数据。

首先,我们需要创建一个TableView对象,并设置它的列数和行数。然后,我们可以通过调用TableView的getColumns()方法来获取列对象的集合,然后为每一列设置标题和数据。

下面是一个示例代码,演示如何在TableView中显示ArrayList<List<String>>的值:

代码语言:txt
复制
import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.scene.Scene;
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;

import java.util.ArrayList;
import java.util.List;

public class TableViewExample extends Application {

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

    @Override
    public void start(Stage primaryStage) {
        // 创建TableView对象
        TableView<List<String>> tableView = new TableView<>();

        // 创建列对象
        List<TableColumn<List<String>, String>> columns = new ArrayList<>();

        // 设置列标题和数据
        for (int i = 0; i < 3; i++) {
            TableColumn<List<String>, String> column = new TableColumn<>("Column " + (i + 1));
            final int columnIndex = i;
            column.setCellValueFactory(cellData -> {
                List<String> row = cellData.getValue();
                if (row != null && row.size() > columnIndex) {
                    return new PropertyValueFactory<>(row.get(columnIndex));
                } else {
                    return new PropertyValueFactory<>("");
                }
            });
            columns.add(column);
        }

        // 将列添加到TableView中
        tableView.getColumns().addAll(columns);

        // 创建数据
        List<List<String>> data = new ArrayList<>();
        List<String> row1 = new ArrayList<>();
        row1.add("Value 1");
        row1.add("Value 2");
        row1.add("Value 3");
        data.add(row1);
        List<String> row2 = new ArrayList<>();
        row2.add("Value 4");
        row2.add("Value 5");
        row2.add("Value 6");
        data.add(row2);

        // 将数据添加到TableView中
        ObservableList<List<String>> observableData = FXCollections.observableArrayList(data);
        tableView.setItems(observableData);

        // 创建布局并显示
        VBox root = new VBox(tableView);
        Scene scene = new Scene(root, 400, 300);
        primaryStage.setScene(scene);
        primaryStage.show();
    }
}

在这个示例中,我们创建了一个包含3列的TableView,并使用ArrayList<List<String>>作为数据源。然后,我们创建了两行数据,并将它们添加到TableView中。

这个示例中使用的腾讯云相关产品和产品介绍链接地址如下:

  • 腾讯云产品:云服务器(https://cloud.tencent.com/product/cvm)
  • 腾讯云产品:云数据库 MySQL 版(https://cloud.tencent.com/product/cdb_mysql)
  • 腾讯云产品:云存储(https://cloud.tencent.com/product/cos)
  • 腾讯云产品:人工智能(https://cloud.tencent.com/product/ai)
  • 腾讯云产品:物联网(https://cloud.tencent.com/product/iotexplorer)
  • 腾讯云产品:移动开发(https://cloud.tencent.com/product/mobdev)
  • 腾讯云产品:区块链(https://cloud.tencent.com/product/baas)
  • 腾讯云产品:元宇宙(https://cloud.tencent.com/product/metaspace)

请注意,以上链接仅供参考,具体的产品选择应根据实际需求进行评估。

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

相关·内容

没有搜到相关的沙龙

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券