我正在尝试将我在一个表中选择的行添加到另一个表中。我不确定如何动态追加行。到目前为止,我所做的代码只是改变了第一行。
int hr = 1;
if ( hr == 1){
ObservableList<TableColumn<ObservableList<StringProperty>, ?>> header = tableId.getColumns();
auswTable.getColumns().addAll(header);
hr = 2;
}
ObservableList<ObservableList<StringProperty>> content =
tableId.getSelectionModel().getSelectedItems();
auswTable.setItems(content);
答案 0 :(得分:0)
现在它只向table2发送一行并交换其内容 每次用户点击按钮。我想添加更多行 table1来自table1。
发生这种情况是因为在table2的代码中,您将selectedItems可观察列表设置为setItems,因此当用户选择表1中的行/行时,它将自动添加table2。要解决此问题,请为table2定义一个新的ObserbaleList,并将选定项的值添加到它。
示例代码:
private ObservableList<ObservableList<StringProperty>> table2Observable =
FXCollections.observableArrayList();
private boolean init = true;
if(init) {
ObservableList<TableColumn<ObservableList<StringProperty>, ?>> header =
tableId.getColumns();
auswTable.getColumns().addAll(header);
auswTable.setItems(table2Observable);
init = false;
}
table2Observable.addAll(tableId.getSelectionModel().getSelectedItems());