我有StringProperty
,其中包含两个不断变化的字母(例如:06)。我有两个标签,我想绑定到StringProperty的每个字母,如label1="0"
和label2="6"
。有没有办法将标签绑定到StringProperty
的特定字母?
我的代码:
@FXML
private Label hoursLabel1;
@FXML
private Label hoursLabel2;
private StringProperty hours;
@FXML
private void initialize() {
hoursLabel1.textProperty().bind(hours);
}
答案 0 :(得分:4)
使用Bindings.createStringBinding(...)
:
@FXML
private void initialize() {
hoursLabel1.textProperty().bind(Bindings.createStringBinding(() ->
hours.get().substring(0,1), hours));
hoursLabel2.textProperty().bind(Bindings.createStringBinding(() ->
hours.get().substring(1,2), hours));
}