RadioButtonGroup
Le RadioButtonGroup gère une collection de composants RadioButton. Un seul RadioButton peut être sélectionné dans un RadioButtonGroup. Lorsqu'un utilisateur sélectionne un nouveau bouton radio, l'ancien sélectionné dans le groupe est automatiquement désélectionné.
Création d'un RadioButtonGroup
RadioButtonGroupLe composant RadioButtonGroup ne rend pas un élément HTML. Il fournit uniquement la logique pour que les composants RadioButton se comportent comme un groupe plutôt qu'individuellement.
Créez des composants RadioButton individuels et passez-les au constructeur de RadioButtonGroup. Un seul bouton dans le groupe peut être sélectionné à la fois.
Afficher le code
- RadioButtonGroupView.java
Ajout et suppression de composants RadioButton
Vous pouvez inclure des composants RadioButton dans le constructeur de RadioButtonGroup pour créer un groupe à partir des composants fournis.
Pour ajouter ou supprimer un RadioButton d'un RadioButtonGroup existant, utilisez les méthodes add() ou remove().
RadioButtonLe composant RadioButton dispose de la méthode getButtonGroup(), qui renvoie le RadioButtonGroup auquel il appartient, ou null s'il n'a pas de groupe.
Imbrication 25.11
Comme d'autres composants, vous pouvez imbriquer un RadioButtonGroup dans un conteneur, afin de ne pas avoir à ajouter directement chaque RadioButton individuel.
RadioButton agree = new RadioButton("D'accord");
RadioButton neutral = new RadioButton("Neutre");
RadioButton disagree = new RadioButton("Pas d'accord");
RadioButtonGroup group = new RadioButtonGroup("choix", agree, neutral, disagree);
Fieldset fieldset = new Fieldset("Options");
fieldset.add(group);
Utilisation de RadioButtonGroupChangeEvent
Chaque RadioButton peut avoir son propre écouteur d'événements pour détecter quand un utilisateur le bascule. Cependant, un avantage de l'utilisation d'un RadioButtonGroup est que vous pouvez utiliser un seul écouteur d'événements qui répond à tous les boutons radio du groupe avec l'RadioButtonGroupChangeEvent.
Ajout d'écouteurs d'événements à chaque RadioButton
agree.onValueChange(e -> changeEvent());
neutral.onValueChange(e -> changeEvent());
disagree.onValueChange(e -> changeEvent());
Ajout d'un seul écouteur d'événements au RadioButtonGroup
RadioButtonGroup group = new RadioButtonGroup("choix", agree, neutral, disagree);
group.onChange(e -> changeEvent());
L'exemple suivant de Placement du tiroir utilise l'RadioButtonGroupChangeEvent pour changer automatiquement le placement du composant Drawer :
Afficher le code
- DrawerPlacementView.java
Nommage
L'attribut name dans un RadioButtonGroup regroupe les RadioButton connexes, permettant aux utilisateurs de faire un choix unique parmi les options fournies et imposant l'exclusivité parmi les RadioButton. Le nom d'un groupe n'est pas reflété dans le DOM, cependant, et est un outil de commodité pour le développeur Java.