最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java卡片布局管理器解釋及實(shí)例

 更新時(shí)間:2017年09月01日 17:30:55   作者:鑒客  
這篇文章主要介紹了Java卡片布局管理器解釋及實(shí)例,需要的朋友可以參考下。

        由 CardLayout 類實(shí)現(xiàn)的布局管理器稱為卡片布局管理器,用來(lái)操縱其所管理容器中包含的容器或組件。每個(gè)直接添加到其所管理容器中的容器或組件為一個(gè)卡片,最先被添加的容器或組件被認(rèn)為是第一個(gè)卡片,最后被添加的則為最后一個(gè)卡片,初次運(yùn)行時(shí)將顯示第一個(gè)卡片。下面,我們就來(lái)通過(guò)一個(gè)實(shí)例看看它是怎么用的。

源碼:

import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Insets;
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;
import javax.swing.UIManager;
 

public class TestMain extends JFrame {
  private JPanel pane = null; // 主要的JPanel,該JPanel的布局管理將被設(shè)置成CardLayout
  private JPanel p = null; // 放按鈕的JPanel
  private CardLayout card = null; // CardLayout布局管理器
  private JButton button_1 = null; // 上一步
  private JButton button_2 = null; // 下一步
  private JButton b_1 = null, b_2 = null, b_3 = null; // 三個(gè)可直接翻轉(zhuǎn)到JPanel組件的按鈕
  private JPanel p_1 = null, p_2 = null, p_3 = null; // 要切換的三個(gè)JPanel
  
  public TestMain() {
    super("CardLayout Test");
    try {
      // 將LookAndFeel設(shè)置成Windows樣式
      UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
    } catch (Exception ex) {
      ex.printStackTrace();
    }
    /**創(chuàng)建一個(gè)具有指定的水平和垂直間隙的新卡片布局*/
    card = new CardLayout(5, 5);
    pane = new JPanel(card); // JPanel的布局管理將被設(shè)置成CardLayout
    p = new JPanel(); // 構(gòu)造放按鈕的JPanel
    button_1 = new JButton("< 上一步");
    button_2 = new JButton("下一步 >");
    b_1 = new JButton("1");
    b_2 = new JButton("2");
    b_3 = new JButton("3");
    b_1.setMargin(new Insets(2,2,2,2));
    b_2.setMargin(new Insets(2,2,2,2));
    b_3.setMargin(new Insets(2,2,2,2));
    p.add(button_1);
    p.add(b_1);
    p.add(b_2);
    p.add(b_3);
    p.add(button_2);
    p_1 = new JPanel();
    p_2 = new JPanel();
    p_3 = new JPanel();
    p_1.setBackground(Color.RED);
    p_2.setBackground(Color.BLUE);
    p_3.setBackground(Color.GREEN);
    p_1.add(new JLabel("JPanel_1"));
    p_2.add(new JLabel("JPanel_2"));
    p_3.add(new JLabel("JPanel_3"));
    pane.add(p_1, "p1");
    pane.add(p_2, "p2");
    pane.add(p_3, "p3");
    /**下面是翻轉(zhuǎn)到卡片布局的某個(gè)組件,可參考API中的文檔*/
    button_1.addActionListener(new ActionListener(){ // 上一步的按鈕動(dòng)作
      public void actionPerformed(ActionEvent e) {
        card.previous(pane);
      }
    });
    button_2.addActionListener(new ActionListener(){ // 下一步的按鈕動(dòng)作
      public void actionPerformed(ActionEvent e) {
        card.next(pane);
      }
    });
    b_1.addActionListener(new ActionListener() { // 直接翻轉(zhuǎn)到p_1
      public void actionPerformed(ActionEvent e) {
        card.show(pane, "p1");
      }
    });
    b_2.addActionListener(new ActionListener() { // 直接翻轉(zhuǎn)到p_2
      public void actionPerformed(ActionEvent e) {
        card.show(pane, "p2");
      }
    });
    b_3.addActionListener(new ActionListener() { // 直接翻轉(zhuǎn)到p_3
      public void actionPerformed(ActionEvent e) {
        card.show(pane, "p3");
      }
    });
    this.getContentPane().add(pane);
    this.getContentPane().add(p, BorderLayout.SOUTH);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setSize(300, 200);
    this.setVisible(true);
  }
  
  public static void main(String[] args) {
    new TestMain();
  }
  
}

注意:當(dāng)利用方法 next() 或 previous() 顯示卡片時(shí),將循環(huán)顯示所有卡片。例如,如果當(dāng)前顯示的是最后一個(gè)卡片,再調(diào)用方法 next() 將顯示第一個(gè)卡片;如果當(dāng)前顯示的是第一個(gè)卡片,再調(diào)用方法 previous() 將顯示最后一個(gè)卡片。

希望本文對(duì)大家Java程序設(shè)計(jì)有所幫助,同時(shí),也請(qǐng)大家繼續(xù)關(guān)注腳本之家!

相關(guān)文章

  • java中基本注解的知識(shí)點(diǎn)總結(jié)

    java中基本注解的知識(shí)點(diǎn)總結(jié)

    在本篇文章里小編給大家整理的是一篇關(guān)于java中基本注解的知識(shí)點(diǎn)總結(jié),有需要的朋友們可以跟著學(xué)習(xí)下。
    2021-06-06
  • mybatisplus+pgsql查詢bug的解決

    mybatisplus+pgsql查詢bug的解決

    本文主要介紹了mybatisplus+pgsql查詢bug的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • SpringBoot快速搭建實(shí)現(xiàn)三步驟解析

    SpringBoot快速搭建實(shí)現(xiàn)三步驟解析

    這篇文章主要介紹了SpringBoot快速搭建實(shí)現(xiàn)三步驟解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Java的ConcurrentHashMap原理深入分析

    Java的ConcurrentHashMap原理深入分析

    這篇文章主要介紹了Java的ConcurrentHashMap原理深入分析,集合是編程中最常用的數(shù)據(jù)結(jié)構(gòu),而談到并發(fā),幾乎總是離不開(kāi)集合這類高級(jí)數(shù)據(jù)結(jié)構(gòu)的支持,需要的朋友可以參考下
    2023-07-07
  • IDEA2020.1同步系統(tǒng)設(shè)置到GitHub的方法

    IDEA2020.1同步系統(tǒng)設(shè)置到GitHub的方法

    這篇文章主要介紹了IDEA2020.1同步系統(tǒng)設(shè)置到GitHub的方法,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Java中的abstract和interface

    Java中的abstract和interface

    abstract和interface關(guān)鍵字在Java中隨處可見(jiàn),它是Java三大特性封裝、繼承、多態(tài)特性的實(shí)現(xiàn)重要支柱之一。interface關(guān)鍵字用于定義接口抽象,其本質(zhì)上是用于定義類型、定義類所具有的能力,下面來(lái)看看詳細(xì)內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • idea+ springboot熱部署的配置方法

    idea+ springboot熱部署的配置方法

    這篇文章主要介紹了idea+ springboot熱部署的配置方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • java 動(dòng)態(tài)加載的實(shí)現(xiàn)代碼

    java 動(dòng)態(tài)加載的實(shí)現(xiàn)代碼

    這篇文章主要介紹了java 動(dòng)態(tài)加載的實(shí)現(xiàn)代碼的相關(guān)資料,Java動(dòng)態(tài)加載類主要是為了不改變主程序代碼,通過(guò)修改配置文件就可以操作不同的對(duì)象執(zhí)行不同的功能,需要的朋友可以參考下
    2017-07-07
  • 使用IDEA工具配置和運(yùn)行vue項(xiàng)目及遇到的坑

    使用IDEA工具配置和運(yùn)行vue項(xiàng)目及遇到的坑

    這篇文章主要介紹了使用IDEA工具配置和運(yùn)行vue項(xiàng)目及遇到的坑,需要的朋友可以參考下
    2018-09-09
  • 基于jvm-sandbox的imock開(kāi)發(fā)指南詳解

    基于jvm-sandbox的imock開(kāi)發(fā)指南詳解

    這篇文章主要為大家介紹了基于jvm-sandbox的imock開(kāi)發(fā)指南詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08

最新評(píng)論

谢通门县| 南康市| 紫阳县| 汨罗市| 廊坊市| 丹江口市| 栾川县| 缙云县| 安仁县| 抚远县| 咸丰县| 南充市| 宝鸡市| 兴海县| 永和县| 永川市| 纳雍县| 资阳市| 罗平县| 洛阳市| 喜德县| 宁津县| 鹰潭市| 忻州市| 通海县| 嵊泗县| 钟祥市| 东至县| 成安县| 溆浦县| 屏东县| 甘德县| 常山县| 西充县| 隆化县| 如东县| 青田县| 顺昌县| 巴马| 开远市| 离岛区|