import java.awt.*; import javax.swing.*; import java.awt.event.*; import java.lang.*; public class Boutons extends JPanel implements WindowListener{ public Boutons() { super(); JButton one = new JButton("1"); JButton two = new JButton("2"); JButton three = new JButton("3"); JButton four = new JButton("4"); JButton five = new JButton("5"); five.setPreferredSize(new Dimension(150,150)); this.setLayout(new GridBagLayout()); GridBagConstraints gbc = new GridBagConstraints(); gbc.gridx = 0; // la plage de cellules commence à la première colonne gbc.gridy = 0; // la plage de cellules commence à la première ligne gbc.gridwidth = 2; // la plage de cellules englobe deux colonnes gbc.gridheight = 1; // la plage de cellules englobe une seule ligne gbc.fill = GridBagConstraints.BOTH; // occupe tout l'espace de la plage gbc.anchor = GridBagConstraints.CENTER; // se place au centre de la plage gbc.weightx = 1.0; // souhaite plus de largeur si possible gbc.weighty = 1.0; // souhaite plus de hauteur si possible gbc.insets = new Insets(1, 1, 1, 1); // laisse 1 pixels de vide autour du composant this.add(one, gbc); gbc.gridx = 2; // la plage de cellules commence à la troisième colonne gbc.gridy = 0; // la plage de cellules commence à la première ligne gbc.gridwidth = 1; // la plage de cellules englobe une seule colonne gbc.gridheight = 2; // la plage de cellules englobe deux lignes gbc.fill = GridBagConstraints.BOTH; // occupe tout l'espace de la plage gbc.anchor = GridBagConstraints.CENTER; // se place au centre de la plage gbc.weightx = 1.0; // souhaite plus de largeur si possible gbc.weighty = 1.0; // souhaite plus de hauteur si possible gbc.insets = new Insets(1, 1, 1, 1); // laisse 1 pixels de vide autour du composant this.add(two, gbc); gbc.gridx = 1; // la plage de cellules commence à la deuxième colonne gbc.gridy = 2; // la plage de cellules commence à la troisième ligne gbc.gridwidth = 2; // la plage de cellules englobe deux colonnes gbc.gridheight = 1; // la plage de cellules englobe une seule ligne gbc.fill = GridBagConstraints.BOTH; // occupe tout l'espace de la plage gbc.anchor = GridBagConstraints.CENTER; // se place au centre de la plage gbc.weightx = 1.0; // souhaite plus de largeur si possible gbc.weighty = 1.0; // souhaite plus de hauteur si possible gbc.insets = new Insets(1, 1, 1, 1); // laisse 1 pixels de vide autour du composant this.add(three, gbc); gbc.gridx = 0; // la plage de cellules commence à la première colonne gbc.gridy = 1; // la plage de cellules commence à la deuxième ligne gbc.gridwidth = 1; // la plage de cellules englobe une seule colonne gbc.gridheight = 2; // la plage de cellules englobe deux lignes gbc.fill = GridBagConstraints.BOTH; // occupe tout l'espace de la plage gbc.anchor = GridBagConstraints.CENTER; // se place au centre de la plage gbc.weightx = 1.0; // souhaite plus de largeur si possible gbc.weighty = 1.0; // souhaite plus de hauteur si possible gbc.insets = new Insets(1, 1, 1, 1); // laisse 1 pixels de vide autour du composant this.add(four, gbc); gbc.gridx = 1; // la plage de cellules commence à la deuxième colonne gbc.gridy = 1; // la plage de cellules commence à la deuxième ligne gbc.gridwidth = 1; // la plage de cellules englobe une seule colonne gbc.gridheight = 1; // la plage de cellules englobe une seule ligne gbc.fill = GridBagConstraints.BOTH; // occupe tout l'espace de la plage gbc.anchor = GridBagConstraints.CENTER; // se place au centre de la plage gbc.weightx = 0.0; // ne souhaite pas plus de largeur gbc.weighty = 0.0; // ne souhaite pas plus de hauteur gbc.insets = new Insets(1, 1, 1, 1); // laisse 1 pixels de vide autour du composant this.add(five, gbc); } public void windowDeactivated(WindowEvent evenement){ } public void windowActivated(WindowEvent evenement){ } public void windowClosed(WindowEvent evenement){ } public void windowClosing(WindowEvent evenement){ JOptionPane exit = new JOptionPane(); int rep = exit.showConfirmDialog(this, "Etes vous certain de vouloir quitter?", "Quitter", JOptionPane.YES_NO_OPTION); if (rep == JOptionPane.YES_OPTION){ Main.fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } else if (rep == JOptionPane.NO_OPTION){ Main.fenetre.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); } } public void windowDeiconified(WindowEvent evenement){ } public void windowIconified(WindowEvent evenement){ } public void windowOpened(WindowEvent evenement){ } }