如何在JAVA FX的表格视图中清除每一行中单元格数据的所有内容

Fub*_*ata 6 java javafx

我发现很难清除表中的表内容。我已经尝试过此代码。

for ( int i = 0; i<resultTable.getItems().size(); i++) {
    resultTable.getItems().clear();
}
Run Code Online (Sandbox Code Playgroud)

为了澄清我的问题,我遇到的问题是我想删除表中的值。这是我使用的第一个代码。

public void removeRow(){
    allFiles = table.getItems(); fileSelected = table.getSelectionModel().getSelectedItems(); 
    fileSelected.forEach(allFiles :: remove); 
}
Run Code Online (Sandbox Code Playgroud)

但是它仅删除特定的选定行。我想清除所有行并立即将表留空,而不必选择任何行。我尝试使用此代码;

public void removeAllRows(){
    for ( int i = 0; i<resultTable.getItems().size(); i++) {
        resultTable.getItems().clear(); 
    } 
}
Run Code Online (Sandbox Code Playgroud)

但它不会清除表中的所有行

我的计划是将此方法用作按钮的操作。例如

Button btn = new ("Clear Table");
btn..setOnAction(e->{removeAllRows();});
Run Code Online (Sandbox Code Playgroud)

单击此按钮后,应立即删除表中的所有行。

Kev*_*dez 6

tableView.getItems().clear()

会成功的


小智 2

尝试使用以下命令:将“tableView”命名为您的FXMLtable名称

for ( int i = 0; i<tableView.getItems().size(); i++) {
    tableView.getItems().clear();
}
Run Code Online (Sandbox Code Playgroud)

  • tableView.getItems().clear() 清除所有TableView数据。不需要循环它。 (17认同)