带有选择框的 JavaFX + Scene Builder 更新标签

JavaFX + Scene Builder Update Label with choicebox

我想知道从 ChoiceBox 值更新标签的最佳方法 截至目前,我在单击 ChoiceBox 时更新了标签,但这使用户 select 成为一个选择,然后单击 ChoiceBox 进行更新 这是我在 Scene Builder

中鼠标点击选择框时调用的显示方法的相关代码
  @FXML
public void display() {
    label.setText((String) stockChoice.getValue());
}

还有我的初始化方法,我将一个项目(生菜)放入选择框

@Override
public void initialize(URL url, ResourceBundle rb) {
    modelClass = new WarehouseModel();
    modelClass.addNewVariety("Lettuce");
    stockChoice.getItems().addAll(modelClass.getAllVarieties());

}

预先感谢您的所有帮助!

有很多方法可以做到这一点,但我个人会使用简单的绑定。

label.textProperty().bind(stockChoice.getSelectionModel().selectedItemProperty());

假设 stockChoiceChoiceBoxString 项。如果该项目是自定义类型,那么您可以使用Bindings.createStringBinding()来帮助您。