1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
| import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class CardLayoutExemple extends JFrame {
public CardLayout cl = new CardLayout();
String [] listContent = {"panel1", "panel2", "panel3", "panel4"};
public JPanel conteneurPanels = new JPanel();
public JPanel content = new JPanel();
public CardLayoutExemple() {
//Paramètres de la JFrame
this.setSize(200, 150);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
//Création des cartes
JPanel panel1 = new JPanel();
panel1.setBackground(Color.BLUE);
JPanel panel2 = new JPanel();
panel2.setBackground(Color.RED);
JPanel panel3 = new JPanel();
panel3.setBackground(Color.GREEN);
JPanel panel4 = new JPanel();
panel4.setBackground(Color.YELLOW);
conteneurPanels.setPreferredSize(new Dimension(200,100));
//Ajout des différents panels au conteneur
conteneurPanels.setLayout(cl);
conteneurPanels.add(panel1, listContent[0]);
conteneurPanels.add(panel2, listContent[1]);
conteneurPanels.add(panel3, listContent[2]);
conteneurPanels.add(panel4, listContent[3]);
//Conteneur principal
JPanel boutons = new JPanel();
JButton suivant = new JButton("Suivant");
suivant.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event){
cl.next(conteneurPanels);
}
});
JButton precedent = new JButton("Précédent");
precedent.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event){
cl.previous(conteneurPanels);
}
});
//Utilises la méthode suivante pour affiché le panel souhaité par rapport à son identifiant:
//cl.show(conteneurPanels , listContent[0];
boutons.add(precedent);
boutons.add(suivant);
content.add(boutons, BorderLayout.NORTH);
content.add(conteneurPanels, BorderLayout.CENTER);
this.setContentPane(content);
this.setVisible(true);
}
public static void main (String args[]) {
new CardLayoutExemple();
}
} |
Partager