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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
| import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.RadioButton;
import javafx.scene.control.Separator;
import javafx.scene.control.TextField;
import javafx.scene.control.ToggleGroup;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
import javafx.beans.binding.IntegerBinding;
import javafx.beans.property.IntegerProperty;
import javafx.beans.property.SimpleIntegerProperty;
/**
*
* @author
*/
public class Test extends Application {
private final IntegerProperty f = new SimpleIntegerProperty(1);
private final IntegerProperty g = new SimpleIntegerProperty(1);
private final IntegerProperty d = new SimpleIntegerProperty(1);
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage stage) throws Exception {
ToggleGroup fr = new ToggleGroup();
RadioButton r1FR = new RadioButton("trés rare");
r1FR.setUserData(2);
r1FR.setToggleGroup(fr);
RadioButton r2FR = new RadioButton("faible");
r2FR.setUserData(4);
r2FR.setToggleGroup(fr);
RadioButton r3FR = new RadioButton("forte");
r3FR.setUserData(6);
r3FR.setToggleGroup(fr);
RadioButton r4FR = new RadioButton("occasionnelle");
r4FR.setUserData(8);
r4FR.setToggleGroup(fr);
fr.selectedToggleProperty().addListener((value, oldTog, neTog) -> {
if (neTog != null) {
f.set((Integer) neTog.getUserData());
}
});
ToggleGroup gr = new ToggleGroup();
RadioButton r1GR = new RadioButton("mineur");
r1GR.setUserData(2);
r1GR.setToggleGroup(gr);
RadioButton r2GR = new RadioButton("majeur");
r2GR.setUserData(4);
r2GR.setToggleGroup(gr);
RadioButton r3GR = new RadioButton("moyenne");
r3GR.setUserData(6);
r3GR.setToggleGroup(gr);
RadioButton r4GR = new RadioButton("catastrophique");
r4GR.setUserData(8);
r4GR.setToggleGroup(gr);
gr.selectedToggleProperty().addListener((value, oldTog, neTog) -> {
if (neTog != null) {
g.set((Integer) neTog.getUserData());
}
});
ToggleGroup de = new ToggleGroup();
RadioButton r1DE = new RadioButton("evdente");
r1DE.setUserData(2);
r1DE.setToggleGroup(de);
RadioButton r2DE = new RadioButton("exploitable");
r2DE.setUserData(4);
r2DE.setToggleGroup(de);
RadioButton r3DE = new RadioButton("impossible");
r3DE.setUserData(6);
r3DE.setToggleGroup(de);
RadioButton r4DE = new RadioButton("faible");
r4DE.setUserData(8);
r4DE.setToggleGroup(de);
de.selectedToggleProperty().addListener((value, oldTog, neTog) -> {
if (neTog != null) {
d.set((Integer) neTog.getUserData());
}
});
TextField textField = new TextField();
IntegerBinding binding = new IntegerBinding() {
{
super.bind(f, d, g);
}
@Override
protected int computeValue() {
return f.get() * d.get() * g.get();
}
};
textField.textProperty().bind(binding.asString());
VBox root = new VBox(r1FR, r2FR, r3FR, r4FR, new Separator(), r1GR, r2GR, r3GR, r4GR, new Separator(), r1DE, r2DE, r3DE, r4DE, new Separator(), textField);
Scene scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
} |
Partager