Zum Hauptinhalt springen

RadioButtonGroup

In ChatGPT öffnen
23.01
Java API

Die RadioButtonGroup verwaltet eine Sammlung von RadioButton Komponenten. Nur ein RadioButton kann in einer RadioButtonGroup ausgewählt werden. Wenn ein Benutzer einen neuen Radio-Button auswählt, wird der zuvor in der Gruppe ausgewählte automatisch abgewählt.

Code anzeigen

RadioButtonGroup Rendering

Die RadioButtonGroup Komponente rendert kein HTML-Element. Sie bietet nur die Logik, um RadioButton Komponenten als Gruppe zu behandeln, anstatt einzeln.

Hinzufügen und Entfernen von RadioButton Komponenten

Sie können RadioButton Komponenten im Konstruktor der RadioButtonGroup einfügen, um eine Gruppe aus den bereitgestellten Komponenten zu erstellen. Um einen RadioButton aus einer vorhandenen RadioButtonGroup hinzuzufügen oder zu entfernen, verwenden Sie die Methoden add() oder remove().

Abrufen der Gruppe eines RadioButton

Die RadioButton Komponente hat die Methode getButtonGroup(), die die RadioButtonGroup zurückgibt, zu der sie gehört, oder null, wenn sie keine Gruppe hat.

Verschachtelung 25.11

Wie andere Komponenten können Sie eine RadioButtonGroup in einen Container einfügen, sodass Sie nicht jeden einzelnen RadioButton direkt hinzufügen müssen.

RadioButton agree = new RadioButton("Zustimmen");
RadioButton neutral = new RadioButton("Neutral");
RadioButton disagree = new RadioButton("Ablehnen");

RadioButtonGroup group = new RadioButtonGroup("Auswahlmöglichkeiten", agree, neutral, disagree);

Fieldset fieldset = new Fieldset("Optionen");
fieldset.add(group);

Verwendung von RadioButtonGroupChangeEvent

Jeder RadioButton kann seinen eigenen Ereignis-Listener haben, um zu erkennen, wann ein Benutzer ihn umschaltet. Ein Vorteil der Verwendung einer RadioButtonGroup ist jedoch, dass Sie einen einzigen Ereignis-Listener verwenden können, der auf alle Radio-Buttons in der Gruppe mit dem RadioButtonGroupChangeEvent reagiert.

Ereignis-Listener zu jedem RadioButton hinzufügen

agree.onValueChange(e -> changeEvent());
neutral.onValueChange(e -> changeEvent());
disagree.onValueChange(e -> changeEvent());

Einen einzigen Ereignis-Listener zur RadioButtonGroup hinzufügen

RadioButtonGroup group = new RadioButtonGroup("Auswahlmöglichkeiten", agree, neutral, disagree);
group.onChange(e -> changeEvent());

Das folgende Beispiel von Drawer Placement verwendet das RadioButtonGroupChangeEvent, um automatisch die Platzierung der Drawer Komponente zu ändern:

Code anzeigen

Benennung

Das name Attribut in einer RadioButtonGroup gruppiert verwandte RadioButtons zusammen, sodass Benutzer eine einzelne Wahl aus den bereitgestellten Optionen treffen können und die Exklusivität unter den RadioButtons durchgesetzt wird. Der Name einer Gruppe wird jedoch nicht im DOM widergespiegelt und ist ein praktisches Hilfsmittel für den Java-Entwickler.