JAVA Faire une Bouton Radio
logique
Messages postés
100
Statut
Membre
-
logique Messages postés 100 Statut Membre -
logique Messages postés 100 Statut Membre -
Bonjour, je débute en JAVA et je galère rien que pour faire un bouton radio ! ='(
voila ce que j'ai fait jusqu'à présent :
Class FenetreMenu
package fenetre;
import java.awt.Container;
import java.awt.Panel;
import javax.swing.*;
/**
* @author XXXX
*
*/
class FenetreMenu extends JDialog
{
private JLabel labNom;
private Container contenu;
private ButtonGroup group;
private JRadioButton radio1;
private JRadioButton radio2;
private JRadioButton radio3;
public FenetreMenu()
{
super();
this.labNom = new JLabel ("Entreprise Toner Express");
this.labNom.setBounds(120, 20, 200, 20);
this.contenu = this.getContentPane();
this.contenu.add(labNom);
this.contenu.setLayout(null);
ButtonGroup group = new ButtonGroup();
JRadioButton radio1 = new JRadioButton("Radio Button1");
JRadioButton radio2 = new JRadioButton("Radio Button2");
JRadioButton radio3 = new JRadioButton("Radio Button3");
group.add(radio1);
group.add(radio2);
group.add(radio3);
}
}
Class TestFenetre
/**
*
*/
package fenetre;
/**
* @author jlucas
*
*/
public class TestFenetre {
/**
* @param args
*/
public static void main(String[] args)
{
// TODO Auto-generated method stub
FenetreMenu maFenetre = new FenetreMenu();
maFenetre.setBounds(300, 300, 400, 200);
maFenetre.setTitle("Toner-Express");
maFenetre.setVisible(true);
}
}
Merci pour votre aide car la je désespère !
voila ce que j'ai fait jusqu'à présent :
Class FenetreMenu
package fenetre;
import java.awt.Container;
import java.awt.Panel;
import javax.swing.*;
/**
* @author XXXX
*
*/
class FenetreMenu extends JDialog
{
private JLabel labNom;
private Container contenu;
private ButtonGroup group;
private JRadioButton radio1;
private JRadioButton radio2;
private JRadioButton radio3;
public FenetreMenu()
{
super();
this.labNom = new JLabel ("Entreprise Toner Express");
this.labNom.setBounds(120, 20, 200, 20);
this.contenu = this.getContentPane();
this.contenu.add(labNom);
this.contenu.setLayout(null);
ButtonGroup group = new ButtonGroup();
JRadioButton radio1 = new JRadioButton("Radio Button1");
JRadioButton radio2 = new JRadioButton("Radio Button2");
JRadioButton radio3 = new JRadioButton("Radio Button3");
group.add(radio1);
group.add(radio2);
group.add(radio3);
}
}
Class TestFenetre
/**
*
*/
package fenetre;
/**
* @author jlucas
*
*/
public class TestFenetre {
/**
* @param args
*/
public static void main(String[] args)
{
// TODO Auto-generated method stub
FenetreMenu maFenetre = new FenetreMenu();
maFenetre.setBounds(300, 300, 400, 200);
maFenetre.setTitle("Toner-Express");
maFenetre.setVisible(true);
}
}
Merci pour votre aide car la je désespère !
A voir également:
- Bouton radio java
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Radio française - Télécharger - Médias et Actualité
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
3 réponses
1) Tu dois initialiser group à l'aide d'un constructeur
5) Le layout null impose que tu définisses chaque position avec setBounds
6) Tu peux aussi utiliser un autre Layout que null, et ainsi ne pas avoir à te soucier des setBounds. Exemple complet :
group = new ButtonGroup();2) Une JFrame c'est un Container, donc les méthodes que tu utilises sur contenu tu peux directement les utiliser sur this.
this.setLayout(null);// identique à this.contenu.setLayout(null);3) Le this est facultatif lorsque tu fais référence à une méthode ou à un objet courant, sa principale utilité est de pouvoir être utilisé comme argument d'une méthode.
setLayout(null); // identique à this.setLayout(null);4) Ajouter des boutons au groupe ne les ajoute pas à l'interface (ça agit sur leur comportement pas sur leur position dans la fenêtre), il faut donc ajouter les boutons à l'interface :
add(radio1); // identique à this.contenu.add(radio1) radio.setBounds( add(radio2); // identique à contenu.add(radio2) add(radio3); // identique à this.add(radio3)
5) Le layout null impose que tu définisses chaque position avec setBounds
radio1.setBounds(20,50,150,20); radio2.setBounds(20,70,150,20); radio3.setBounds(20,90,150,20);
6) Tu peux aussi utiliser un autre Layout que null, et ainsi ne pas avoir à te soucier des setBounds. Exemple complet :
import java.awt.GridLayout; import javax.swing.ButtonGroup; import javax.swing.JDialog; import javax.swing.JLabel; import javax.swing.JRadioButton; class FenetreMenu extends JDialog { private static final long serialVersionUID = 1; private final ButtonGroup group; private final JRadioButton radio1; private final JRadioButton radio2; private final JRadioButton radio3; public FenetreMenu() { setTitle("Toner-Express"); setSize(400,200); setLocation(300, 300); setLayout(new GridLayout(4,1)); add(new JLabel("Entreprise Toner Express", JLabel.CENTER)); group = new ButtonGroup(); radio1 = new JRadioButton("Radio Button1"); group.add(radio1); add(radio1); radio2 = new JRadioButton("Radio Button2"); group.add(radio2); add(radio2); radio3 = new JRadioButton("Radio Button3"); group.add(radio3); add(radio3); setDefaultCloseOperation(DISPOSE_ON_CLOSE); setVisible(true); } } public class TestFenetre { public static void main(String[] args) { new FenetreMenu(); } }