Désactiver boutons lors de cliques sur autre bouton
Bonjour,
Débutant en JavaFX, je cherche a effectuer avec les bindings l'action suivante :
Lorsque le btn1 est cliqué, celui ci doit devenir activé, et btn2 et btn3 doivent se réactiver.
Voici mon code de test :
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 25 26 27 28 29 30 31 32 33
| public class Boutons extends Application
{
public static void main(String[] args)
{
launch(args);
}
@Override
public void start(Stage stage) throws Exception
{
stage.setTitle("TEST");
Button btn1 = new Button("A");
Button btn2 = new Button("B");
Button btn3 = new Button("C");
btn2.disableProperty().bind(btn1.disableProperty().not());
btn3.disableProperty().bind(btn1.disableProperty().not());
//btn1.disableProperty().bind(btn3.disableProperty().not());
btn1.setOnAction(action -> btn1.disableProperty().set(true));
btn2.setOnAction(action -> btn2.disableProperty().set(true));
btn3.setOnAction(action -> btn3.disableProperty().set(true));
HBox controls = new HBox(10);
controls.getChildren().addAll(btn1, btn2, btn3);
Scene scene = new Scene(controls);
stage.setScene(scene);
stage.show();
}
} |
cependant j'obtiens une erreur
Code:
Exception in thread "JavaFX Application Thread" java.lang.RuntimeException: Button.disable : A bound value cannot be set.
lorsque je reclique sur B ou C pour réactiver le bouton A. J'ai pas compris quelque chose ?
Merci