Java CardLayout
精华
小牛编辑
139浏览
2023-03-14
1 Java CardLayout的介绍
CardLayout类以这样的方式管理组件:一次仅可见一个组件。它将每个组件都视为卡,这就是为什么它被称为CardLayout的原因。
2 Java CardLayout的构造方法
构造方法 | 描述 |
---|---|
CardLayout() | 创建水平和垂直间隙为零的卡片布局。 |
CardLayout(int hgap, int vgap) | 创建具有给定水平和垂直间隙的卡片布局。 |
3 Java 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) | 用于翻转到具有给定名称的指定卡。 |
4 Java CardLayout的案例
package cn.xnip;
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.setTitle("CardLayout案例-小牛知识库网");
cl.setVisible(true);
cl.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
输出结果为: