gpt4 book ai didi

JavaFX 表格 View 清除集合

转载 作者:行者123 更新时间:2023-12-02 13:21:44 26 4
gpt4 key购买 nike

我有一个表格 View ,我想做的是基于具有环境类型的单选按钮; QA、DEV、PROD 等。它将一个可观察列表添加到 TableView 中,如果您单击不同的单选按钮,它会清除先前环境的列表,并在 TableView 中显示关联的可观察列表。

我的问题是,由于 obs 列表是通过引用传递到 TableView 中的,tableview.getItems().clear() 清除 TableView 和列表。我试图做到这一点——它只清除表格 View 中显示的内容,而不是原始列表。

ObservableList<BarFile> devCheckboxList = FXCollections.observableArrayList();
//List gets populated with files elsewhere
switch (chk.getText()) {
//Check to see which checkbox is selected
case "DEV":
tableView.getItems().clear();
System.err.println("DEV IS TRUE");
environmentCheck("DEV");
//Add to listview
tableView.setItems(devCheckboxList);
break;
}

Populated Tableview

Tableview when environment is switched

最佳答案

如果您不想清除现有列表,请不要调用clear():

ObservableList<BarFile> devCheckboxList = FXCollections.observableArrayList();
//List gets populated with files elsewhere

switch (chk.getText()) {
//Check to see which checkbox is selected
case "DEV":
// tableView.getItems().clear();
System.err.println("DEV IS TRUE");
environmentCheck("DEV");
//Add to listview
tableView.setItems(devCheckboxList);
break;

}

由于您无论如何都要替换表格的整个列表,因此对 clear() 的调用不会影响表格中显示的内容。

关于JavaFX 表格 View 清除集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43546448/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com