我想创建一个TableView
。在我的.fxml
控制器中,我有以下两列:
@FXML
private TableColumn<Log, String> planeRegistrationColumn;
@FXML
private TableColumn<Log, String> planeTypeColumn;
日志类有一个属性Plane
,它是一个Plane实例。但是setCellValueFactory
似乎并不喜欢它:
planeRegistrationColumn.setCellValueFactory(cellData -> cellData.getValue().planeProperty().get().getRegistration());
getRegistration()
返回一个String,但需要ObservableValue<String>
。这是一个概念问题吗?如果没有,我该怎么办呢?
答案 0 :(得分:1)
只需将您获得的字符串包装成某种可观察值:
planeRegistrationColumn.setCellValueFactory(cellData ->
new SimpleStringProperty(cellData.getValue().planeProperty().get().getRegistration()));