📜  Java LayoutManagers-CardLayout

📅  最后修改于: 2020-10-01 03:58:37             🧑  作者: Mango

Java CardLayout

CardLayout类以这样的方式管理组件:一次仅可见一个组件。它将每个组件都视为卡,这就是为什么它被称为CardLayout的原因。

CardLayout类的构造方法

  • CardLayout():创建水平和垂直间隙为零的卡片布局。
  • CardLayout(int hgap,int vgap):创建具有给定水平和垂直间隙的卡片布局。

CardLayout类的常用方法

  • public void next(Container parent):用于翻转到给定容器的下一张卡片。
  • public void previous(Container parent):用于翻转到给定容器的上一张卡片。
  • public void first(Container parent):用于翻转到给定容器的第一张卡片。
  • public void last(Container parent):用于翻转到给定容器的最后一张卡片。
  • public void show(Container parent,String name):用于翻转到具有给定名称的指定卡。

CardLayout类的示例


import java.awt.*;
import java.awt.event.*;

import javax.swing.*;

public class CardLayoutExample extends JFrame implements ActionListener{
CardLayout card;
JButton b1,b2,b3;
Container c;
CardLayoutExample(){

c=getContentPane();
card=new CardLayout(40,30);
//create CardLayout object with 40 hor space and 30 ver space
c.setLayout(card);

b1=new JButton("Apple");
b2=new JButton("Boy");
b3=new JButton("Cat");
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);

c.add("a",b1);c.add("b",b2);c.add("c",b3);

}
public void actionPerformed(ActionEvent e) {
card.next(c);
}

public static void main(String[] args) {
CardLayoutExample cl=new CardLayoutExample();
cl.setSize(400,400);
cl.setVisible(true);
cl.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}