java cardlayout 效果,Java CardLayout

Java CardLayout

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 com.yiidian;

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);

}

}

输出结果为:

39573cf16685a95e99dbdf94009f214c.png

阅读终点,创作起航,您可以撰写心得或摘录文章要点写篇博文。去创作
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Java中使用CardLayout切换卡片,您需要使用以下步骤: 1. 创建一个CardLayout对象。 ``` CardLayout cardLayout = new CardLayout(); ``` 2. 将CardLayout对象设置为容器的布局管理器。 ``` container.setLayout(cardLayout); ``` 3. 添加每个卡片作为一个组件,并使用字符串标识每个卡片。 ``` container.add(component1, "card1"); container.add(component2, "card2"); ``` 4. 要切换到另一个卡片,请调用CardLayout对象的show()方法,并传递该卡片的字符串标识。 ``` cardLayout.show(container, "card2"); ``` 以下是一个完整的示例代码,演示如何使用CardLayout切换卡片: ``` import java.awt.*; import java.awt.event.*; import javax.swing.*; public class CardLayoutDemo extends JFrame implements ActionListener { private JPanel cards; public CardLayoutDemo() { setTitle("CardLayout示例"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 创建卡片 JPanel card1 = new JPanel(); card1.add(new JLabel("这是第1个卡片")); JPanel card2 = new JPanel(); card2.add(new JLabel("这是第2个卡片")); // 创建容器并设置布局管理器 cards = new JPanel(new CardLayout()); cards.add(card1, "card1"); cards.add(card2, "card2"); // 创建按钮并添加监听器 JButton button1 = new JButton("显示第1个卡片"); button1.addActionListener(this); JButton button2 = new JButton("显示第2个卡片"); button2.addActionListener(this); // 将卡片和按钮添加到窗口中 Container contentPane = getContentPane(); contentPane.add(cards, BorderLayout.CENTER); contentPane.add(button1, BorderLayout.NORTH); contentPane.add(button2, BorderLayout.SOUTH); pack(); setVisible(true); } public void actionPerformed(ActionEvent e) { if (e.getActionCommand().equals("显示第1个卡片")) { CardLayout cardLayout = (CardLayout) cards.getLayout(); cardLayout.show(cards, "card1"); } else if (e.getActionCommand().equals("显示第2个卡片")) { CardLayout cardLayout = (CardLayout) cards.getLayout(); cardLayout.show(cards, "card2"); } } public static void main(String[] args) { new CardLayoutDemo(); } } ``` 在这个示例中,我们创建了两个卡片,并使用字符串“card1”和“card2”标识它们。我们将这些卡片添加到一个带有CardLayout的JPanel中,并将该JPanel添加到窗口中。我们还创建了两个按钮,分别用于在卡片之间切换。当用户单击按钮时,我们使用CardLayout对象的show()方法切换到另一个卡片。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值