JAVA GUI之CardLayout
Posted Andy 胡
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA GUI之CardLayout相关的知识,希望对你有一定的参考价值。
package refNet; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class CardLayoutTest extends JFrame implements ActionListener { private static final long serialVersionUID = 1L; JButton b0, b1, b2, b3; Panel cardPanel = new Panel(); Panel controlpaPanel = new Panel(); // 定义卡片布局对象 CardLayout card = new CardLayout(); // 定义字符数组,为卡片命名 String cardName[] = { "card0", "card1", "card2", "card3" }; // 定义构造函数 public CardLayoutTest() { super("卡片布局管理器"); setSize(400, 200); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); // 设置cardPanel面板对象为卡片布局 cardPanel.setLayout(card); // 循环,在cardPanel面板对象中添加4个按钮 // 因为cardPanel面板对象为卡片布局,因此初始时显示最先添加的组件 for (int i = 0; i < 4; i++) { // 面板中添加的每个按钮对应设置一个卡片名 cardPanel.add(cardName[i], new JButton("卡片中按钮" + i)); } // 实例化【切换按钮】对象 b0 = new JButton("0"); b1 = new JButton("1"); b2 = new JButton("2"); b3 = new JButton("3"); // 为按钮对象注册监听器 b0.addActionListener(this); b1.addActionListener(this); b2.addActionListener(this); b3.addActionListener(this); controlpaPanel.add(b0); controlpaPanel.add(b1); controlpaPanel.add(b2); controlpaPanel.add(b3); // 定义容器对象为当前窗体容器对象 Container container = getContentPane(); // 将 cardPanel面板放置在窗口边界布局的中间,窗口默认为边界布局 container.add(cardPanel, BorderLayout.CENTER); // 将controlpaPanel面板放置在窗口边界布局的南边, container.add(controlpaPanel, BorderLayout.SOUTH); } @Override public void actionPerformed(ActionEvent e) { // 用户单击b0按钮时执行的语句 if (e.getSource() == b0) { // show():翻转到使用 addLayoutComponent 添加到此布局的具有指定 name 的组件。 card.show(cardPanel, cardName[0]); } if (e.getSource() == b1) { card.show(cardPanel, cardName[1]); } if (e.getSource() == b2) { card.show(cardPanel, cardName[2]); } if (e.getSource() == b3) { card.show(cardPanel, cardName[3]); } } public static void main(String[] args) { CardLayoutTest kapian = new CardLayoutTest(); } }
以上是关于JAVA GUI之CardLayout的主要内容,如果未能解决你的问题,请参考以下文章
Java AWT 图形界面编程LayoutManager 布局管理器 ⑤ ( CardLayout 卡片布局 | ActionListener 按钮点击事件添加 )
Java AWT 图形界面编程LayoutManager 布局管理器 ⑤ ( CardLayout 卡片布局 | ActionListener 按钮点击事件添加 )