我有这个配置的 TableView:
@FXML
private TableView<Budget> budgetTable;
@FXML
private TableColumn<Budget, String> idColumn, budgetNameColumn, buildingColumn, addressColumn, taxableColumn,
budgetTotalColumn, budgetStateColumn, clientColumn;
@FXML
private TableColumn<Budget, LocalDate> budgetDateColumn;
@FXML
private void initialize() {
...
clientColumn.setCellValueFactory(new Callback<CellDataFeatures<Budget, String>, ObservableValue<String>>() {
@Override
public ObservableValue<String> call(CellDataFeatures<Budget, String> data) {
if (data.getValue().getClient() != null) {
return data.getValue().getClient().nameProperty().concat(" ")
.concat(data.getValue().getClient().surnameProperty());
}
return null;
}
});
...
}
- 当应用程序启动时,表格工作正常。
- 当我尝试添加新预算时遇到问题。我将它很好地存储在数据库中,但是返回主视图时出现 NullPointerException。
- 如果我像代码所示那样控制这个异常,我必须记录相同的新创建预算。
- 当我创建一个新预算时,我删除了可观察列表的所有元素,并以与第一个相同的方式再次填充它(效果很好)。
- 在下图中,最后两条记录是不良记录。它只会显示第一个和第二个。
谁能帮帮我??
非常感谢。