JRadioButton | Java Swing
Nous utilisons la classe JRadioButton pour créer un bouton radio. Le bouton radio est utilisé pour sélectionner une option parmi plusieurs options. Il est utilisé pour remplir des formulaires, des documents en ligne et des QCMs.
Nous ajoutons des boutons radio dans un groupe afin de pouvoir sélectionner un seul bouton radio à la fois. Nous utilisons la classe « ButtonGroup » pour créer un groupe de boutons et ajouter un bouton radio dans un groupe.
Les constructeurs de la classe JRadioButton sont :
JRadioButton() | Crée un bouton radio non sélectionné sans texte. |
JRadioButton(String s) | Crée un bouton radio non sélectionné avec le texte spécifié. |
JRadioButton(String s, boolean selected) | Crée un bouton radio avec le texte spécifié et sélectionné. |
Les méthodes couramment utilisées de la classe JRadioButton sont :
- void setText(String s) : Il est utilisé pour définir le texte spécifié sur le bouton.
- String getText() : Il est utilisé pour renvoyer le texte du bouton.
- void setEnabled(boolean b) : Il est utilisé pour activer ou désactiver le bouton.
- void setIcon(Icon b) : Il est utilisé pour définir l’icône spécifiée sur le bouton.
- Icon getIcon() : Il est utilisé pour récupérer l’icône du bouton.
- void setMnemonic(int a) : Il est utilisé pour définir la mnémonique sur le bouton.
- void addActionListener(ActionListener a) : Il est utilisé pour ajouter action listener à cet objet.
Exemple: JRadioButton
import javax.swing.*; public class RadioButtonTest { JFrame frame; RadioButtonTest() { frame = new JFrame(); // Créer l'étiquette JLabel label = new JLabel("1 - Donnez l'abreviation de AWT?", JLabel.CENTER); label.setBounds(20,0,200,80); // Créer les boutons radio JRadioButton rBtn1 = new JRadioButton("A) Applet Windowing Toolkit"); JRadioButton rBtn2 = new JRadioButton("B) Abstract Windowing Toolkit"); JRadioButton rBtn3 = new JRadioButton("C) Absolute Windowing Toolkit"); // Définir la position des boutons radio rBtn1.setBounds(40,60,200,50); rBtn2.setBounds(40,100,200,50); rBtn3.setBounds(40,140,200,50); // Ajouter les boutons radio au groupe ButtonGroup bg = new ButtonGroup(); bg.add(rBtn1); bg.add(rBtn2); bg.add(rBtn3); // Ajouter les boutons au frame frame.add(label); frame.add(rBtn1); frame.add(rBtn2); frame.add(rBtn3); frame.setSize(300,300); frame.setLayout(null); frame.setVisible(true); } public static void main(String[] args) { new RadioButtonTest(); } }
Sortie:
Exemple: JRadioButton avec ActionListener
import javax.swing.*; import java.awt.event.*; public class RadioButtonTest extends JFrame implements ActionListener { JFrame frame; JButton btn; JRadioButton rBtn1, rBtn2, rBtn3; RadioButtonTest() { frame = new JFrame(); // Créer l'étiquette JLabel label = new JLabel("1 - Donnez l'abreviation de AWT?", JLabel.CENTER); label.setBounds(20,0,200,80); // Créer les boutons radio rBtn1 = new JRadioButton("A) Applet Windowing Toolkit"); rBtn2 = new JRadioButton("B) Absolute Windowing Toolkit"); rBtn3 = new JRadioButton("C) Abstract Windowing Toolkit"); // Définir la position des boutons radio rBtn1.setBounds(40,60,200,50); rBtn2.setBounds(40,100,200,50); rBtn3.setBounds(40,140,200,50); // Ajouter les boutons radio au groupe ButtonGroup bg = new ButtonGroup(); bg.add(rBtn1); bg.add(rBtn2); bg.add(rBtn3); btn = new JButton("Check"); btn.setBounds(100,200,80,30); btn.addActionListener(this); // Ajouter les boutons au frame frame.add(label); frame.add(rBtn1); frame.add(rBtn2); frame.add(rBtn3); frame.add(btn); frame.setSize(300,300); frame.setLayout(null); frame.setVisible(true); } public void actionPerformed(ActionEvent e){ if(rBtn1.isSelected() || rBtn2.isSelected()){ JOptionPane.showMessageDialog(this,"Votre reponse est fausse."); } if(rBtn3.isSelected()){ JOptionPane.showMessageDialog(this,"Votre reponse est correcte."); } } public static void main(String[] args) { new RadioButtonTest(); } }
Sortie: