我设法创建了一个TableView
,其中包含分配给datamodel-class的特定列。该程序可以将csv文件解析为它并在表中正确显示所有内容。在这个阶段滚动不是问题。
然后我想选择特定的行并将它们发送到另一个表。哪个也有效。但是当我再次开始在table1中滚动时,可视区域外的内容就消失了。
我真的不明白这里发生了什么,因为我没有为table1改变任何东西。两个列表都使用Order作为数据模型......也许这是一个问题?以下是将行发送到table2的代码:
if(init) { //init is true
ObservableList<TableColumn<Order, ?>> header = table1.getColumns();
table2.getColumns().addAll(header);
table2.setItems(table2Observable);
init = false;
}
table2Observable.addAll(table1.getSelectionModel().getSelectedItems());
table2.setItems(table2Observable);
答案 0 :(得分:0)
如果order是你的bean类,那么正确覆盖hashcode()和equals()方法。这是因为重复的对象。它对我有用。