CheckboxGroup

Signaler
Messages postés
12
Date d'inscription
lundi 17 mars 2008
Statut
Membre
Dernière intervention
27 mai 2008
-
Messages postés
2333
Date d'inscription
samedi 28 février 2004
Statut
Membre
Dernière intervention
26 juillet 2013
-
Bonjour,
comment insère-t-on un CheckboxGroup dans un JPanel??
Voici le code que j'ai écris, mais en compilant, il m'indique une erreur à la derniere ligne, au niveau du .add !

JPanel panneauEnvoi = new JPanel ();
CheckboxGroup groupeRadio = new CheckboxGroup();
Checkbox oui = new Checkbox("Oui",groupeRadio,false);
Checkbox non = new Checkbox("Non",groupeRadio,true);
panneauEnvoi.add (groupeRadio);

Merci pour vos futures réponses...
A voir également:

3 réponses

Messages postés
2333
Date d'inscription
samedi 28 février 2004
Statut
Membre
Dernière intervention
26 juillet 2013
35
Salut:

Il ne faut pas ajouter l'objet CheckBoxGroup, mais les JCheckBox.

L'objet CheckBoxGroup sert seulement à assurer qu'un seul JCheckBox est séléctionné à la fois.
Messages postés
2333
Date d'inscription
samedi 28 février 2004
Statut
Membre
Dernière intervention
26 juillet 2013
35
Salut:

Voici un exemple complet:

public JPanel createChoicePanel() {
    JPanel panel = new JPanel();
    panel.setLayout(new GridLayout(3, 1));
   
    JCheckBox cb1 = new JCheckBox("Rouge");
    JCheckBox cb2 = new JCheckBox("Noir");
    JCheckBox cb3 = new JCheckBox("Jaune");

    CheckBoxGroup group = new CheckBoxGroup();
    group.add(cb1);
    group.add(cb2);
    group.add(cb3);

    panel.add(cb1);

    panel.add(cb2);

    panel.add(cb3);

    return panel;
}
Messages postés
2333
Date d'inscription
samedi 28 février 2004
Statut
Membre
Dernière intervention
26 juillet 2013
35
Salut:

Petite faute d'inattention, je n'ai pas vu que tu utilises les composants CheckBox de AWT.

public Panel createChoicePanel() {
    Panel panel = new Panel();
    panel.setLayout(new GridLayout(3, 1));

    CheckBoxGroup group = new CheckBoxGroup();   
    CheckBox cb1 = new CheckBox("Rouge", group, true);
    CheckBox cb2 = new CheckBox("Noir",  group, false);
    CheckBox cb3 = new CheckBox("Jaune", group, false);

    panel.add(cb1);
    panel.add(cb2);
    panel.add(cb3);

    return panel;
}

Ce n'est bien encouragé de mélanger des composants AWT et des composants Swing, un exemple avec Swing:

public JPanel createChoicePanel() {
    JPanel panel = new JPanel();
    panel.setLayout(new GridLayout(3, 1));
   
    JCheckBox cb1 = new JCheckBox("Rouge");
    JCheckBox cb2 = new JCheckBox("Noir");
    JCheckBox cb3 = new JCheckBox("Jaune");

    // Avec Swing, on utilises ButtonGroup
    ButtonGroup group = new ButtonGroup();
    group.add(cb1);
    group.add(cb2);
    group.add(cb3);

    panel.add(cb1);
    panel.add(cb2);
    panel.add(cb3);

    return panel;
}