Bouton en Java

yoshiro Messages postés 496 Date d'inscription   Statut Membre Dernière intervention   -  
yoshiro Messages postés 496 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
je programme un projet en java, et je veux appeler un bouton a partir d'un item de mon menu mais ça ne passe pas c'est-a-dire le bouton n'apparait pas dans la fenêtre!!
Voici le code de la classde ma fenetre JFrame
public class accueil extends JFrame 
{
	private JMenuBar menuBar = new JMenuBar();
	private JMenu men1 = new JMenu("Adherents");
	private JMenu men2 = new JMenu("Livres");
	private JMenu men3 = new JMenu("Emprunt");
	private JMenu men4 = new JMenu("A propos");
	private JMenuItem item1 = new JMenuItem("Affichage adherents");
	private JMenuItem item2 = new JMenuItem("Rechercher adherents");
	private JMenuItem item3 = new JMenuItem("Affichage livres");
	private JMenuItem item4 = new JMenuItem("Rechercher livres");
	private JMenuItem item5 = new JMenuItem("Faire un emprunt");
	private JMenuItem item6 = new JMenuItem("Rendre livre");
	private JMenuItem item7 = new JMenuItem("Consulter enprunt");
	private JMenuItem item8 = new JMenuItem("Historique");
	
	public adherents adh = new adherents();
	
	public accueil()
	{
		this.setSize(400, 200);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setLocationRelativeTo(null);
			
		//On initialise nos menus
		//--------------------------
		//1er menu	
		this.men1.add(item1);
		item1.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent arg0) 
			{
				adh.initComponent();
			}				
		});
		this.men1.add(item2);
		//2eme menu
		this.men2.add(item3);
		this.men2.add(item4);
		//3eme menu
		this.men3.add(item5);
		this.men3.add(item6);
		this.men3.add(item7);
		this.men3.add(item8);
		//4eme menu
		men4.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent arg0) 
			{
				System.exit(0);
			}				
		});
		this.menuBar.add(men1);
		this.menuBar.add(men2);
		this.menuBar.add(men3);
		this.menuBar.add(men4);
		//-------------------------
		this.setJMenuBar(menuBar);		
	}
	
	//-------------------------------------
	public static void main(String[] main)
	{
		accueil fen = new accueil();
		fen.setVisible(true);
	}
}

et voici celui du bouton
public class adherents extends JFrame 
{
	private JLabel affiLabel;
	public mysql reque = new mysql();
	Object[][] data;
	
	public void initComponent()
	{
		JButton bouton = new JButton("Inscription");
		Container conteneur=null;
		bouton.setBounds(10,20,100,20);
		// on récupère le conteneur de la fenêtre
		conteneur=this.getContentPane();
		// on ajoute le bouton au conteneur
		conteneur.add(bouton);
		// on choisit un gestionnaire de mise en forme des composants dans ce conteneur
		conteneur.setLayout(null);
	}


MERCI D'AVANCE !!
A voir également:

6 réponses

chuka Messages postés 965 Date d'inscription   Statut Membre Dernière intervention   378
 
Salut,
je sais pas si j'ai bien compris...tu veux que le button apparaisse dans la fenetre accueil??
Si oui, tu peux t'inspirer de cela....
public class accueil extends JFrame
{
	private JMenuBar menuBar = new JMenuBar();
	private JMenu men1 = new JMenu("Adherents");
	private JMenu men2 = new JMenu("Livres");
	private JMenu men3 = new JMenu("Emprunt");
	private JMenu men4 = new JMenu("A propos");
	private JMenuItem item1 = new JMenuItem("Affichage adherents");
	private JMenuItem item2 = new JMenuItem("Rechercher adherents");
	private JMenuItem item3 = new JMenuItem("Affichage livres");
	private JMenuItem item4 = new JMenuItem("Rechercher livres");
	private JMenuItem item5 = new JMenuItem("Faire un emprunt");
	private JMenuItem item6 = new JMenuItem("Rendre livre");
	private JMenuItem item7 = new JMenuItem("Consulter enprunt");
	private JMenuItem item8 = new JMenuItem("Historique");

	public adherents adh = new adherents(this);

	public Main()
	{
		this.setSize(400, 200);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setLocationRelativeTo(null);

		//On initialise nos menus
		//--------------------------
		//1er menu
		this.men1.add(item1);
		item1.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent arg0)
			{
				adh.initComponent();
			}
		});
		this.men1.add(item2);
		//2eme menu
		this.men2.add(item3);
		this.men2.add(item4);
		//3eme menu
		this.men3.add(item5);
		this.men3.add(item6);
		this.men3.add(item7);
		this.men3.add(item8);
		//4eme menu
		men4.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent arg0)
			{
				System.exit(0);
			}
		});
		this.menuBar.add(men1);
		this.menuBar.add(men2);
		this.menuBar.add(men3);
		this.menuBar.add(men4);
		//-------------------------
		this.setJMenuBar(menuBar);
	}

	//-------------------------------------
	public static void main(String[] main)
	{
		accueil fen = new accueil();
		fen.setVisible(true);
	}
}
 class adherents extends JFrame
{
	private JLabel affiLabel;
        private accueil mainFen;
	public mysql reque = new mysql();
	Object[][] data;

    adherents(accueil aThis) {
        this.mainFen=aThis;
    }

	public void initComponent()
	{

		JButton bouton = new JButton("Inscription");
		Container conteneur=null;
		bouton.setBounds(10,20,100,20);
		// on récupère le conteneur de la fenêtre
		conteneur=mainFen.getContentPane();
		// on ajoute le bouton au conteneur
		conteneur.add(bouton);
		// on choisit un gestionnaire de mise en forme des composants dans ce conteneur
		conteneur.setLayout(null);
                
	}


 }

@+
0
yoshiro Messages postés 496 Date d'inscription   Statut Membre Dernière intervention   65
 
oki merci beaucoup le bouton apparait ^_^ !!
0
yoshiro Messages postés 496 Date d'inscription   Statut Membre Dernière intervention   65
 
oups désolé j'étais trop content !!
les boutons apparait mais seulement quand le pointeur de la souris passe dessus !!
il y 3 boutons + des jlabels !!

		JButton insc = new JButton("Inscription");
		JButton modi = new JButton("Modification");
		JButton supp = new JButton("Suprimer");
		Container conteneur=null;
		insc.setBounds(10,20,100,20);
		modi.setBounds(10,50,100,20);
		supp.setBounds(10,80,100,20);
		// on récupère le conteneur de la fenêtre
		conteneur=mainFen.getContentPane();
		// on ajoute le bouton au conteneur
		conteneur.add(insc);
		conteneur.add(modi);
		conteneur.add(supp);
		// on choisit un gestionnaire de mise en forme des composants dans ce conteneur
		conteneur.setLayout(null);
0
yoshiro Messages postés 496 Date d'inscription   Statut Membre Dernière intervention   65
 
up !!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
chuka Messages postés 965 Date d'inscription   Statut Membre Dernière intervention   378
 
Salut,
je pense à un probleme de refreh de la fentre...mais j'ai essayé des trucs sans grand resultat..je vais voir si je trouve autre chose.....
0
arth Messages postés 9374 Date d'inscription   Statut Contributeur Dernière intervention   1 293
 
Bonjour,

Déjà juste un conseil réorganise ton code j'ai beau le lire 2 fois je comprends rien ^^

Du type à quoi te sert d'avoir 2 classes qui dérivent des JFrame alors que tu n'as à l'écran qu'une seule Frame? Un JPanel suffirait.
0
yoshiro Messages postés 496 Date d'inscription   Statut Membre Dernière intervention   65
 
salut !!
donc il faut que je met un jpanel dans la class adherent !!
mais comment le faire apparaitre dans la frame accueil ??!!
j'ai essayer this.getContentPane().add(content (c'est le nom du Jpanel), BorderLayout.WEST);
mais ça ne passe pas !!
0