Binding JavaBean et JavaFX Label
Bonjour,
J'ai un objet java disposant d'une propriété Float (balance )que j'aimerais lier à un label javaFX de sorte qu'une modification de balance soit répercutée aussitot sur la partie graphique.
Le Bean Account
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| public class Account{
private Float balance;
public Float getBalance(){
return balance;
}
public void setBalance(Float balance){
this.balance = balance;
}
} |
test d'encapsulation que j'ai fait:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| class AccountProperty {
private Account account;
private SimpleFloatProperty balance;
public AccountProperty(Account account){
this.account = account;
balance = new SimpleFloatProperty(account,"balance");
balance.set(account.getBalance());
}
public Float getBalance(){
return account.getBalance();
}
public void setBalance(Float balance){
account.setBalance(balance);
}
public FloatProperty balanceProperty(){
return balance;
}
} |
Le lien
Code:
1 2 3 4 5
| AccountProperty current = new AccountProperty(account);
javafx.scene.control.Label currentAmount;
...
currentAmount.textProperty().bind(computed.balanceProperty().asString()); |
Si ensuite je fait account.setBalance(25F), il ne se passe rien et le label n'est pas modifié.
J'ai du raté un truc ou alors j'ai rien compris au binding javaFX.
Pourriez vous m'éclairer ?
Merci par avance