javafx添加observablist< string>到单列tableview

发布于 2025-02-01 12:58:48 字数 1016 浏览 3 评论 0原文

我想将来自observablist batchnumber的数据添加到一个tableView,该表仅包含一个列,但我被卡住了,因为我发现的所有教程都是关于添加对象类型而不是字符串类型。

我用来生成一个随机批处理数量AAA0000的

public String generateBatch(){
    Random rand = new Random();
    String[] alphabet = "Q W E R T Y U I O P A S D F G H J K L Z X C V B N M".split(" ");
    String batch = new String();
    batch = alphabet[rand.nextInt(0, 26)] + alphabet[rand.nextInt(0, 26)] + alphabet[rand.nextInt(0, 26)] + rand.nextInt(1000, 9999);
    return batch;
}

功能

    ObservableList<String> batchNumber = FXCollections.observableArrayList();
    for(int i = 0; i < 10; i++){
        batchNumber.add(generateBatch());
    }

TableView<String> batchNumberTableView = new TableView<>();
TableColumn<String, ?> batchColumn = new TableColumn<>("Vaccine Batch Number");
batchNumberTableView.getColumns().add(batchColumn);

是 卡住了,我已经成功地将列添加到了表观视图中,但是我不知道如何将数据从batchnumber分配到tableView中。

I want to add the data from ObservableList batchNumber to a tableview which only contains one column yet im stucked because all the tutorials i found is about adding object type, not string type.

This is a function i used to generate a random batch number of format AAA0000

public String generateBatch(){
    Random rand = new Random();
    String[] alphabet = "Q W E R T Y U I O P A S D F G H J K L Z X C V B N M".split(" ");
    String batch = new String();
    batch = alphabet[rand.nextInt(0, 26)] + alphabet[rand.nextInt(0, 26)] + alphabet[rand.nextInt(0, 26)] + rand.nextInt(1000, 9999);
    return batch;
}

and then i add bunch of batch number into a ObservableList

    ObservableList<String> batchNumber = FXCollections.observableArrayList();
    for(int i = 0; i < 10; i++){
        batchNumber.add(generateBatch());
    }

so now batchNumber is loaded with bunch of Strings and then i tried to assign them to a tableView

TableView<String> batchNumberTableView = new TableView<>();
TableColumn<String, ?> batchColumn = new TableColumn<>("Vaccine Batch Number");
batchNumberTableView.getColumns().add(batchColumn);

and here is where im stucked, i've had successfully added a column into the tableview but i have no idea how to assign the datas from batchNumber into the tableview.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

满身野味 2025-02-08 12:58:48

你需要

TableColumn<String, String> batchColumn = new TableColumn<>("Vaccine Batch Number");
batchColumn.setCellValueFactory(cellData -> new SimpleStringProperty(cellData.getValue()));

You need

TableColumn<String, String> batchColumn = new TableColumn<>("Vaccine Batch Number");
batchColumn.setCellValueFactory(cellData -> new SimpleStringProperty(cellData.getValue()));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文