Suche…


Optionsfelder erstellen

Optionsfelder ermöglichen es dem Benutzer, ein Element aus den angegebenen auszuwählen. Es gibt zwei Möglichkeiten, einen RadioButton mit einem Text daneben zu deklarieren. Entweder indem Sie den Standardkonstruktor RadioButton() und den Text mit der Methode setText(String) oder den anderen Konstruktor RadioButton(String) .

RadioButton radioButton1 = new RadioButton();
radioButton1.setText("Select me!");
RadioButton radioButton2= new RadioButton("Or me!");

Als RadioButton eine Erweiterung ist Labeled kann es auch ein sein Image mit dem angegebenen RadioButton . Nachdem Sie den RadioButton mit einem der Konstruktoren erstellt haben, fügen Sie das Image einfach mit der setGraphic(ImageView) -Methode wie hier hinzu:

Image image = new Image("ok.jpg");
RadioButton radioButton = new RadioButton("Agree");
radioButton.setGraphic(new ImageView(image));

Verwenden Sie Gruppen für Optionsfelder

Eine ToggleGroup wird zum Verwalten der RadioButton s verwendet, sodass jeweils nur einer in jeder Gruppe ausgewählt werden kann.

Erstellen Sie eine einfache ToggleGroup wie folgt:

ToggleGroup group = new ToggleGroup();

Nachdem Sie eine Togglegroup haben, kann sie mit setToggleGroup(ToggleGroup) den RadioButton setToggleGroup(ToggleGroup) . Verwenden Sie setSelected(Boolean) , um einen der RadioButton s RadioButton .

RadioButton radioButton1 = new RadioButton("stackoverlow is awesome! :)");
radioButton1.setToggleGroup(group);
radioButton1.setSelected(true);

RadioButton radioButton2 = new RadioButton("stackoverflow is ok :|");
radioButton2.setToggleGroup(group);

RadioButton radioButton3 = new RadioButton("stackoverflow is useless :(");
radioButton3.setToggleGroup(group);

Ereignisse für Radioknöpfe

Normalerweise führt die Anwendung eine Aktion aus, wenn einer der RadioButton s in einer ToggleGroup ausgewählt wird. Nachfolgend ein Beispiel, in dem die Benutzerdaten des ausgewählten RadioButton die mit setUserData(Object) .

radioButton1.setUserData("awesome")
radioButton2.setUserData("ok");
radioButton3.setUserData("useless");

ToggleGroup group = new ToggleGroup();
group.selectedToggleProperty().addListener((obserableValue, old_toggle, new_toggle) -> {
    if (group.getSelectedToggle() != null) {
        System.out.println("You think that stackoverflow is " + group.getSelectedToggle().getUserData().toString());
    }
});         

Anfordern des Fokus für Optionsfelder

Nehmen wir an, der zweite von RadioButton ist mit setSelected(Boolean) . Der Fokus befindet sich standardmäßig noch auf dem ersten RadioButton . Um dies zu ändern, verwenden Sie die requestFocus() -Methode.

radioButton2.setSelected(true);
radioButton2.requestFocus();


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow