Dwukierunkowe powiązanie JavaFX nie działa, gdy formant nie może być edytowalny
Podaj bardzo elementarną klasę (import rozwiązany w pakiety javafx):
public class T07 extends Application implements Initializable{
z niektórymi polami reprezentującymi kontrolki zdefiniowane w pliku .fxml:
@FXML TextField text01;
oraz model danych, który wykorzystuje opakowania właściwości w najbardziej podstawowy sposób:
public static class DataModel {
StringProperty first = new SimpleStringProperty();
//getter
public String getFirst() {return first.get();}
//setter
public void setFirst(String first) {this.first.set(first);}
//new "property" accessor
public StringProperty firstProperty() {return first;}
}
Próbuję powiązać kontrolkę interfejsu użytkownika z modelem danych wewnątrz inicjalizacji:
@Override
public void initialize(URL arg0, ResourceBundle arg1) {
Bindings.bindBidirectional(text01.textProperty(), dm.firstProperty());
}
ale robiąc todostaję nieedytowalną kontrolkę. komentując linię Bindings.bindBidirectional, kontrolka staje się normalnie edytowalna, a jej wartość jest dostępna poprzez pole text01.
Jaki jest brakujący składnik tego wiążącego receptury?