精华内容
下载资源
问答
  • CardLayout布局实例

    2021-03-22 08:09:04
    CardLayout 对象是容器的布局管理器。它将容器中的每个组件看作一张卡片。一次只能看到一张卡片,而容器充当卡片的堆栈。当容器第一次显示时,第一个添加到 CardLayout 对象的组件为可见组件。卡片的顺序由组件对象...

    CardLayout 对象是容器的布局管理器。它将容器中的每个组件看作一张卡片。一次只能看到一张卡片,而容器充当卡片的堆栈。当容器第一次显示时,第一个添加到 CardLayout 对象的组件为可见组件。

    卡片的顺序由组件对象本身在容器内部的顺序决定。CardLayout 定义了一组方法,这些方法允许应用程序按顺序地浏览这些卡片,或者显示指定的卡片。addLayoutComponent(java.awt.Component, java.lang.Object) 方法可用于将一个字符串标识符与给定卡片相关联,以便进行快速随机访问。

    实例:import java.awt.Frame;

    import java.awt.Button;

    import java.awt.CardLayout;

    import java.awt.Color;

    public class TestCardLayout{

    public static void main(String args[]){

    Frame f = new Frame("CardLayout Example");

    CardLayout cl = new CardLayout();

    f.setLayout (cl);

    Button b[] = new Button[4];

    for(int i = 0; i 

    b[i] = new Button("第" + i + "页");

    f.add(b[i],"page" + i);

    }

    b[0].setBackground(Color.green);

    b[1].setBackground(Color.blue);

    b[2].setBackground(Color.red);

    b[3].setBackground(Color.pink);

    f.pack();

    f.setVisible(true);

    while(true){

    try{

    Thread.sleep(1000);

    }catch(InterruptedException e){

    e.printStackTrace();

    }

    cl.next(f);

    }

    }

    }

    效果图:

    e479466072f276d68c367df5465b6270.png

    展开全文
  • 定义CardLayout布局管理器 当按钮被点击时,实现显示下一张卡片的功能
  • Java CardLayout 布局示例

    2021-03-14 17:44:32
    一、设计流程创建一个主窗口 jf创建两个主面版 mainJP1, mainJP2创建三个子面版 subJP1, subJP2, subJP3创建三个标签,赋值 第1个页面...1)设置主面版mainJP1的布局Cardlayout设置主面版mainJP2的布局为FlowLayou...

    一、设计流程

    创建一个主窗口 jf

    创建两个主面版 mainJP1, mainJP2

    创建三个子面版 subJP1, subJP2, subJP3

    创建三个标签,赋值 第1个页面、第2个页面、第3个页面

    创建两个按钮 btn1, btn2,赋值 上一页、下一页

    设置主窗口的布局为GridLayout(2,1)

    设置主面版mainJP1的布局为Cardlayout

    设置主面版mainJP2的布局为FlowLayout

    分别为3个子面版设置不同的背景色

    将3个标签分别加入到3个子面版中

    将3个子面版加入到主面版 mainJP1 中

    将2个按钮加入到主面版 mainJP2 中

    将两个主面版加入到主窗口中

    处理2个按钮的事件

    将主窗口设置为可见

    设置主窗口的关闭方式

    二、源码

    package javaapplication1;

    import java.awt.CardLayout;

    import java.awt.Color;

    import java.awt.FlowLayout;

    import java.awt.GridLayout;

    import java.awt.event.ActionEvent;

    import java.awt.event.ActionListener;

    import javax.swing.JButton;

    import javax.swing.JFrame;

    import javax.swing.JLabel;

    import javax.swing.JPanel;

    /**

    *

    * @author thinker

    */

    public class buJu {

    /**

    *

    * @param args

    */

    public static void main(String[] args) {

    JFrame jf = new JFrame();

    JPanel mainjp1 = new JPanel();

    JPanel mainjp2 = new JPanel();

    JPanel subjp1 = new JPanel();

    JPanel subjp2 = new JPanel();

    JPanel subjp3 = new JPanel();

    JLabel lb1 = new JLabel("第一个页面");

    JLabel lb2 = new JLabel("第二个页面");

    JLabel lb3 = new JLabel("第三个页面");

    JButton btn1 = new JButton("上一页");

    JButton btn2 = new JButton("下一页");

    jf.setLayout(new GridLayout(2, 1));

    mainjp1.setLayout(new CardLayout());

    mainjp2.setLayout(new FlowLayout());

    subjp1.setBackground(Color.orange);

    subjp2.setBackground(Color.pink);

    subjp3.setBackground(Color.lightGray);

    subjp1.add(lb1, "1");

    subjp2.add(lb2, "2");

    subjp3.add(lb3, "3");

    mainjp1.add(subjp1);

    mainjp1.add(subjp2);

    mainjp1.add(subjp3);

    mainjp2.add(btn1);

    mainjp2.add(btn2);

    jf.add(mainjp1);

    jf.add(mainjp2);

    btn1.addActionListener(new ActionListener() {

    @Override

    public void actionPerformed(ActionEvent e) {

    ((CardLayout)mainjp1.getLayout()).previous(mainjp1);

    }

    });

    btn2.addActionListener(new ActionListener() {

    @Override

    public void actionPerformed(ActionEvent e) {

    ((CardLayout)mainjp1.getLayout()).next(mainjp1);

    }

    });

    jf.setVisible(true);

    jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    }

    }

    三、效果图

    917987673d8610e39c8183e691e18baa.png

    四、参考资料

    1. java中CardLayout的使用方法

    http://www.cnblogs.com/UUUP/p/3800843.html

    2. 范明翔,陈锦辉 - 《深入浅出 java swing 程序设计》第三章节

    希望与广大网友互动??

    点此进行留言吧!

    展开全文
  • JAVA CardLayout布局

    千次阅读 2018-06-23 08:45:28
    3、CardLayout布局 使用CardLayout的容器可以容纳名个组件,这些组件被层叠放入容器中,最先加入容器的是第一张(在最上面),依次向下排序。使用该布局的特点是,同一时刻容器只能从这些组件中选出一个来显示,就像...

    3、CardLayout布局
          使用CardLayout的容器可以容纳名个组件,这些组件被层叠放入容器中,最先加入容器的是第一张(在最上面),依次向下排序。使用该布局的特点是,同一时刻容器只能从这些组件中选出一个来显示,就像叠“扑克牌”,每次只能显示其中的一张,这个被显示的组件将占据所有的容器空间。
          假设有一个容器con,  那么,使用CardLayout的一般步骤如下。
      创建CardLayout对象作为布局,例如;
          CardLayout card = newCardLayout() ;

     使用容器的setLayout(方法为容器设置布局,例如:
           con. setLayout (card) ;
    容器调用add(String s,Component b)将组件b加入容器,并给出了显示该组件的代号s,组件的代号是一个字符串,和组件的名字没有必然联系,但是不同的组件代号必须互不相同。最先加入con的是第一张,依次排序。
    创建的布局card用CardLayout类提供的show()方法,显示容器con中组件代号为s的组件:
           card. show(con, s) ;
    也可以按组件加入容器的顺序显示组件:card.first(con)显示con  中的第一个组件;card.last(con)显示con中的最后一个组件; card.next(con) 显示当前正在被显示的组件的下一个组件; card.previous(con)显示当前正在被显示的组件的前个组件。 


    展开全文
  • 主要介绍了Java Swing CardLayout卡片布局的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • import java.awt.CardLayout; import java.awt.Frame; import java.awt.Label; import java.awt.Panel; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event....

    案例代码:

    import java.awt.*;
    import java.awt.Button;
    import java.awt.CardLayout;
    import java.awt.Frame;
    import java.awt.Label;
    import java.awt.Panel;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    class Cardlayout extends Frame implements ActionListener{
    	Panel cardPanel = new Panel();
    	Panel controlpaPanel = new Panel();	
    	Button nextButton, preButton,Exit;
    	CardLayout cardlayout = new CardLayout();
    	public Cardlayout()
    	{
    		setSize(300,300);
    		setVisible(true);
    		this.addWindowFocusListener(new WindowAdapter()
    			{
    				public void windowClosing(WindowEvent e)
    				{
    					Cardlayout.this.dispose();
    				}
    			});
    		this.addWindowListener(new WindowAdapter()
    		{
    			public void windowClosing(WindowEvent e)
    			{
    				setVisible(false);
    				System.exit(0);
    			}
    		});
    		cardPanel.setLayout(cardlayout);
    		cardPanel.add(new Label("第一页",Label.CENTER));
    		cardPanel.add(new Label("第二页",Label.CENTER));
    		cardPanel.add(new Label("最后一页",Label.CENTER)) ;
    		nextButton = new Button("下一页");
    		preButton = new Button("上一页");
    		Exit = new Button("退出");
    		nextButton.addActionListener(this);
    		preButton.addActionListener(this);
    		Exit.addMouseListener(new MouseAdapter()
    		{
    			public void mouseClicked (MouseEvent e) 
    			{
    				System.exit(0);
    			}
    		});
    		controlpaPanel.add(nextButton);
    		controlpaPanel.add(preButton);
    		controlpaPanel.add(Exit);
    		this.add(cardPanel,BorderLayout.CENTER);
    		this.add(controlpaPanel,BorderLayout.SOUTH);
    		}
    		@Override
    		public void actionPerformed(ActionEvent e){
    			//TODO Auto-generated method stub
    			if(e.getSource() == nextButton)
    			{
    				cardlayout.next(cardPanel);
    			}
    			if(e.getSource() == preButton)
    			{
    				cardlayout.previous(cardPanel);
    			}
    		}
    }
    		public class Example8_8{
    			public static void main(String[] args){
    				Cardlayout cardlayout = new Cardlayout();
    		}
    }
    
    

    案例运行图:

    在这里插入图片描述

    展开全文
  • CardLayout布局

    2017-01-12 12:15:09
    CardLayout 布局可以使页面的不同层展示出来,类似于图片轮播 import java.awt.*; import java.awt.event.*; /** * Description: * 网站: 疯狂Java联盟 * Copyright (C), 2001-2012, Yeeku.H.Lee * This ...
  • CardLayout布局方式来切换面板

    千次阅读 2017-07-28 23:41:26
    CardLayout布局方式来切换面板1.
  • java Swing布局管理器之CardLayout布局

    千次阅读 2016-05-08 15:43:51
    CardLayout布局: CardLayout布局管理器能够帮助用户处理两个以至更多的成员共享同一显示空间,它把容器分成许多层,每层的显示空间占据整个容器的大小,但是每层只允许放置一个组件,当然每层都可以利用Panel来实现复杂...
  • 在开发一个C/S端小游戏的时候,页面布局用的是CardLayout,这样就可以在同一个窗口切换页面,但是游戏代码是另一个类,该类需要在JPanle上画N个点,而这个JPanle是在CardLayout切换后,才能显示出来。当点击开始的...
  • 简单的CardLayout布局案例

    万次阅读 2014-05-07 10:04:43
    代码如下:   package ... import java.awt.BorderLayout; import java.awt.CardLayout; import java.awt.Container; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;
  •  CardLayout card =new CardLayout();   String cardPanelName[]={"0","1","2","3"};  public demo_9_1()  {  this.setVisible(true);  this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); ...
  • Java 程序通过jvm可以很好的移植到其他平台上,但是java 生成的图形界面样式,在不使用布局的情况下,往往需要重新设定大小,才能在新的平台上调整到最佳样式。这是由于组件的最佳大小 往往是与平台相关的。不同平台...
  • cardlayout】卡片布局,就像书一样一页一页的 练习一、设置三个面板,第一个面板设置为卡片布局,第二个面板设置为红色,第三个面板设置为绿色,在第一个面板上添加第二个面板和第三个面板,因为先添加的第二个...
  • 2 涉及Panel中的图片的加载,还有Frame的关闭的方法, CardLayout(int hgap, int vgap)就会决定卡片面板的大小 3 匿名类的使用。。。 4 */ 5 import java.awt.*; 6 import java.awt.event.*; 7 import ...
  • CardLayout(卡片布局管理器)能够帮助用户实现多个成员共享同一个显不空间,并且一次只显示一个容器组件的内容。 CardLayout 布局管理器将容器分成许多层,每层的显示空间占据整个容器的大小,但是每层只允许放置一...
  • CardLayout布局管理器 CardLayout(卡片布局管理器)能够帮助用户实现多个成员共享同一个显示空间,并且一次只显示一个容器组件的内容 CardLayout布局管理器将容器分为很多层,每层的显示空间占据整个容器的大小,...
  • 使用Swing的CardLayout布局方式 实现的上一步、下一步的对话框 交互中经常使用到
  • CardLayout,卡片布局管理器。 它将容器中的每个组件看作一张卡片,一次只能看到一张卡片,容器则充当卡片的堆栈,默认显示第一张卡片。 CardLayout 构造方法 // 创建一个间距大小为 0 的卡片布局 ...
  • CardLayout(卡片布局

    2019-09-27 12:54:15
    CardLayout(卡片布局) 转载于:https://www.cnblogs.com/trnanks/p/10667381.html
  • CardLayout(卡片布局CardLayout 布局管理器以时间而非空间来管理它里面的组件,它将加入容器的所有组件看成一叠卡片(每个卡片其实就是一个组件),每次只有最上面的那个 Component 才可见。就好像一副扑克牌,...
  • //CardLayout布局管理器 public class CardLayoutDemo { public static void main(String[] args) { JFrame jframe = new JFrame(); //创建容器1存储多个卡片 JPanel p1 = new JPanel(); //创建CardLayout布局管理...
  • Java FlowLayout、BorderLayout、GridLayout、GridBagLayout、CardLayout布局管理器
  • 布局管理器之CardLayout(卡片布局管理器)对于选项卡这个概念大家可能不会陌生,就是在一个窗口中可以切换显示多页不同的内容,但同一时间只能是其中的某一页可见的,这样的一个个的页面就是选项卡。CardLayout就是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,472
精华内容 1,788
关键字:

cardlayout布局