CardLayout example
JPanel 에 CardLayout을 설정하고 사용하는 예
JPanel cardPanel;
CardLayout cardLayout;
// JPanel 에 CardLayout 을 설정하고 카드처럼 사용될 콤포넌트를 추가한다
private void initCardPanel() {
cardLayout = new CardLayout();
cardPanel = new JPanel(cardLayout);
JPanel p1 = new JPanel();
p1.setBackground(Color.red);
p1.setBounds(0, 0, 100, 100);
JPanel p2 = new JPanel();
p2.setBackground(Color.green);
p2.setBounds(0, 0, 100, 100);
JPanel p3 = new JPanel();
p3.setBackground(Color.blue);
p3.setBounds(0, 0, 100, 100);
JPanel p4 = new JPanel();
p4.setBackground(Color.yellow);
p3.setBounds(0, 0, 100, 100);
cardPanel.add(p1,"red");
cardPanel.add(p2,"green");
cardPanel.add(p3,"blue");
cardPanel.add(p4,"yellow");
cardPanel.setBounds(0,0,200,200);
getContentPane().add(cardPanel);
}
// 버튼을 누르면 카드가 교체된다
private void btnBlueActionPerformed(java.awt.event.ActionEvent evt) {
cardLayout.show(cardPanel, "blue");
}
private void btnRedActionPerformed(java.awt.event.ActionEvent evt) {
cardLayout.show(cardPanel, "red");
}
private void btnGreenActionPerformed(java.awt.event.ActionEvent evt) {
cardLayout.show(cardPanel, "green");
}
private void btnYellowActionPerformed(java.awt.event.ActionEvent evt) {
cardLayout.show(cardPanel, "yellow");
}