CardLayout의 기능 구성요소를 순차적으로 정렬하고 한 번에 하나의 구성요소만 표시 각 구성 요소는 하나의 카드로 취급됩니다.
카드 레이아웃
- CardLayout 다른 레이아웃 관리자가 컨테이너 내의 모든 구성요소를 한 번에 표시하려고 시도하는 다른 레이아웃과 다릅니다. CardLayout 한 번에 하나의 구성요소만 표시합니다.
- CardLayout , 카드는 일반적으로 JPanel과 같은 컨테이너에 배치됩니다. . 구성 요소는 추가된 순서대로 카드 대기열에 배치됩니다.
- CardLayout의 중요한 메소드는 first(), last(), next(), previous() 및 show()입니다. .
예시
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class CardLayoutTest extends JFrame implements ActionListener { CardLayout card; JButton b1,b2,b3; Container con; CardLayoutTest() { con = this.getContentPane(); card = new CardLayout(40,30); con.setLayout(card); b1 = new JButton("Java"); b2 = new JButton("Python"); b3 = new JButton("Scala"); b1.addActionListener(this); b2.addActionListener(this); b3.addActionListener(this); con.add("a", b1); con.add("b", b2); con.add("c", b3); } public void actionPerformed(ActionEvent e) { card.next(con); } public static void main(String[] args) { CardLayoutTest clt = new CardLayoutTest(); clt.setTitle("CardLayout Test"); clt.setSize(350, 275); clt.setLocationRelativeTo(null); clt.setDefaultCloseOperation(EXIT_ON_CLOSE); clt.setVisible(true); } }
위의 예에서는 하나의 구성요소(Java )이 창에 표시됩니다. 창을 클릭하면 나머지 구성 요소(Python 및 Scala )을 볼 수 있습니다.
출력