java布局管理之CardLayout簡(jiǎn)單實(shí)例
更新時(shí)間:2018年03月29日 10:21:53 作者:沒有太晚的開始
這篇文章主要為大家詳細(xì)介紹了java布局管理之CardLayout的簡(jiǎn)單實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本文實(shí)例為大家分享了java布局管理之CardLayout的具體代碼,供大家參考,具體內(nèi)容如下
import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextArea;
public class TestCard implements ActionListener{
private JFrame fm=new JFrame("卡片的測(cè)試");
private JPanel cardpan,containbtn; //cardpan為卡片顯示區(qū)域, containbtn為按鈕顯示區(qū)域
private JButton btn1,btn2,btn3,btn4; //此處定義詩(shī)人的按鈕
private JPanel pan1,pan2,pan3,pan4; //此處定義的面板中顯示詩(shī)句
private CardLayout card; //定義卡片布局
private JTextArea ta1,ta2,ta3,ta4; //定義放詩(shī)句的文本域
public TestCard(){
//以下為初始化組件
cardpan=new JPanel();
containbtn=new JPanel();
card=new CardLayout();
cardpan.setLayout(card);
btn1=new JButton("李白");
btn2=new JButton("杜甫");
btn3=new JButton("白居易");
btn4=new JButton("孟浩然");
ta1=new JTextArea(30,30);
ta2=new JTextArea(30,30);
ta3=new JTextArea(30,30);
ta4=new JTextArea(30,30);
//把定義的按鈕放到顯示按鈕的面板中
containbtn.add(btn1);
containbtn.add(btn2);
containbtn.add(btn3);
containbtn.add(btn4);
pan1=new JPanel();
//給按鈕添加監(jiān)聽事件
btn1.addActionListener(this);
btn2.addActionListener(this);
btn3.addActionListener(this);
btn4.addActionListener(this);
//給定義的文本域中添加詩(shī)人相應(yīng)的詩(shī)句
ta1.append("日照香爐生紫煙,\r\n");
ta1.append("遙看瀑布掛前川。\r\n");
ta1.append("飛流直下三千尺,\r\n");
ta1.append("疑是銀河落九天。");
ta2.append("兩個(gè)黃鸝鳴翠柳,\r\n");
ta2.append("一行白鷺上青天。\r\n");
ta2.append("窗含西嶺千秋雪,\r\n");
ta2.append("門泊東吳萬(wàn)里船。");
ta3.append("一道殘陽(yáng)鋪水中,\r\n");
ta3.append("半江瑟瑟半江紅。\r\n");
ta3.append("可憐九月初三夜,\r\n");
ta3.append("露似珍珠月似弓。");
ta4.append("春眠不覺曉,\r\n");
ta4.append("處處聞啼鳥。\r\n");
ta4.append("夜來(lái)風(fēng)雨聲,\r\n");
ta4.append("花落知多少。");
pan1.add(ta1);
pan2=new JPanel();
pan2.add(ta2);
pan3=new JPanel();
pan3.add(ta3);
pan4=new JPanel();
pan4.add(ta4);
//把定義好的面板放到卡片布局的組件中
cardpan.add("b1",pan1);
cardpan.add("b2",pan2);
cardpan.add("b3",pan3);
cardpan.add("b4",pan4);
fm.add(containbtn,BorderLayout.NORTH);//把顯示按鈕的組件放到上面顯示
fm.add(cardpan,BorderLayout.CENTER);//把顯示文本域的組件放到中間顯示
fm.setSize(400,400);
fm.setLocation(200,100);
fm.setVisible(true);
fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new TestCard();
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
/**
* e.getActionCommand()顯示的結(jié)果是對(duì)應(yīng)組件上的內(nèi)容標(biāo)簽
* card.show(cardpan, "b1");表示對(duì)應(yīng)組件和顯示組件的名稱
* CardLayout.show(Container parent, String name):顯示卡片的實(shí)現(xiàn)方法定義
*/
if("李白".equals(e.getActionCommand())){
card.show(cardpan, "b1");
}
if("杜甫".equals(e.getActionCommand())){
card.show(cardpan, "b2");
}
if("白居易".equals(e.getActionCommand())){
card.show(cardpan, "b3");
}
if("孟浩然".equals(e.getActionCommand())){
card.show(cardpan, "b4");
}
}
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- java使用jdbc連接數(shù)據(jù)庫(kù)簡(jiǎn)單實(shí)例
- 微信公眾號(hào)開發(fā)之設(shè)置自定義菜單實(shí)例代碼【java版】
- java GUI實(shí)現(xiàn)學(xué)生圖書管理簡(jiǎn)單實(shí)例
- Java注解處理器簡(jiǎn)單實(shí)例
- java 實(shí)現(xiàn)音樂播放器的簡(jiǎn)單實(shí)例
- Java實(shí)現(xiàn)跳躍表(skiplist)的簡(jiǎn)單實(shí)例
- java 實(shí)現(xiàn)MD5加密算法的簡(jiǎn)單實(shí)例
- Java程序單實(shí)例運(yùn)行的簡(jiǎn)單實(shí)現(xiàn)
相關(guān)文章
mybatis注解開發(fā) 一對(duì)多嵌套查詢方式
這篇文章主要介紹了mybatis注解開發(fā) 一對(duì)多嵌套查詢方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2023-03-03
java8中NIO緩沖區(qū)(Buffer)的數(shù)據(jù)存儲(chǔ)詳解
在本篇文章中小編給大家分享了關(guān)于java8中NIO緩沖區(qū)(Buffer)的數(shù)據(jù)存儲(chǔ)的相關(guān)知識(shí)點(diǎn),需要的朋友們參考下。2019-04-04
DUCC配置平臺(tái)實(shí)現(xiàn)一個(gè)動(dòng)態(tài)化線程池示例代碼
這篇文章主要為大家介紹了DUCC配置平臺(tái)實(shí)現(xiàn)一個(gè)動(dòng)態(tài)化線程池示例代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
基于spring security實(shí)現(xiàn)登錄注銷功能過程解析
這篇文章主要介紹了基于spring security實(shí)現(xiàn)登錄注銷功能過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01
MyBatis-Plus QueryWrapper及LambdaQueryWrapper的使用詳解
這篇文章主要介紹了MyBatis-Plus QueryWrapper及LambdaQueryWrapper的使用詳解,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03

