我想知道从ChoiceBox值更新Label的最佳方法 到目前为止,我点击ChoiceBox时会更新标签,但这会让用户选择一个选项,然后点击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());
}
提前感谢您的帮助!
答案 0 :(得分:4)
有很多方法可以做到这一点,但我个人会使用简单的绑定。
label.textProperty().bind(stockChoice.getSelectionModel().selectedItemProperty());
假设stockChoice
是ChoiceBox
个String
个项目。如果该项目是自定义类型,则您可以使用Bindings.createStringBinding()
来帮助您。