我想知道是否有可能使用a ObservableMap来填充TableView?我使用ObservableMap而不是ObservableList因为我需要经常添加和删除,所以我需要最小化成本.
我的hashMap使用BigInteger作为键字段,使用具有许多属性作为值字段的类型.在我的tableView中,我只想显示每个属性列的值.我希望这很清楚
谢谢
我想HashMap在JavaFX中显示内容Tableview.请在下面找到我用来将HashMap内容设置到表格列中的代码.我遇到的问题是它只显示一行.所述for环路迭代只有5次:在每次拾取的第一个值的时间HashMap.
如果我忽略该return SimpleObjectProperty行,则for循环将遍历所有内容HashMap.
final ObservableList<Map> data = FXCollections.observableArrayList();
data.addAll(HASHMAP);
TableColumn<Map.Entry, String> nCol = new TableColumn<Map.Entry, String>("Name");
nCol.setEditable(true);
nCol.setCellValueFactory(new Callback<TableColumn.CellDataFeatures<Entry, String>, ObservableValue<String>>() {
@Override
public ObservableValue<String> call(TableColumn.CellDataFeatures<Entry, String> p) {
Set <String> set=HASHMAP.keySet();
for (String key:HASHMAP.keySet())
{
String key1= key.toString();
return new SimpleObjectProperty<>(key.toString());
}
return null;
}
});
Table.setItems(data);
Table.getColumns().setAll(nCol,.........);
Run Code Online (Sandbox Code Playgroud)