1 import javafx.geometry.Insets;
2 import javafx.scene.control.RadioButton;
3 import javafx.scene.control.ToggleGroup;
4 import javafx.scene.layout.BorderPane;
5 import javafx.scene.layout.VBox;
6 import javafx.scene.paint.Color;
7
8 public class RadioButtonDemo extends CheckBoxDemo {
9 @Override
10 protected BorderPane getPane() {
11 BorderPane pane = super.getPane();
12
13 VBox paneForRadioButtons = new VBox(20);
14 paneForRadioButtons.setPadding(new Insets(5, 5, 5, 5));
15 paneForRadioButtons.setStyle
16 ("-fx-border-width: 2px; -fx-border-color: green");
17
18 RadioButton rbRed = new RadioButton("Red");
19 RadioButton rbGreen = new RadioButton("Green");
20 RadioButton rbBlue = new RadioButton("Blue");
21 paneForRadioButtons.getChildren().addAll(rbRed, rbGreen, rbBlue);
22 pane.setLeft(paneForRadioButtons);
23
24 ToggleGroup group = new ToggleGroup();
25 rbRed.setToggleGroup(group);
26 rbGreen.setToggleGroup(group);
27 rbBlue.setToggleGroup(group);
28
29 rbRed.setOnAction(e -> {
30 if (rbRed.isSelected()) {
31 text.setFill(Color.RED);
32 }
33 });
34
35 rbGreen.setOnAction(e -> {
36 if (rbGreen.isSelected()) {
37 text.setFill(Color.GREEN);
38 }
39 });
40
41 rbBlue.setOnAction(e -> {
42 if (rbBlue.isSelected()) {
43 text.setFill(Color.BLUE);
44 }
45 });
46
47 return pane;
48 }
49
50
54 public static void main(String[] args) {
55 launch(args);
56 }
57 }