Java選項卡(JTabbedPane)的使用
JTabbedPane是一種可以放多個面板的並且可以方便切換的容器
1. 建構函式
(1)JTabbedPane( ) 建立空的JTabbedPane物件,但實際它的默
認值為JTabbedPane.Top,也就是說卡片名將放在容器頂部。
(2)JTabbedPane(int tabPlacement) tabPlacement指定卡片名放
的位置,有四種位置:
JTabbedPane.TOP (放容器頂部)
JTabbedPane.BOTTOM(放容器底部)
JTabbedPane.LEFT(放容器左邊)
JTabbedPane.RIGHT(放容器右)。
(3)JTabbedPane(int tabPlacement,int tabLayoutPolicy)
tabPlacement與上面是一樣的作用, tabLayoutPolicy有兩種
常量,分別是及其作用:
JTabbedPane.WRAP_TAB_LAYOUT
作用:設定視窗過小時,標籤(卡名)將以滾動形式顯示。
JTabbedPane.SCROLL_TAB_LAYOUT
作用:設定視窗過小時,增加一行,多餘標籤(卡名)將放在增加行。
2. 事件處理:
JTabbedPane每換標次籤時,都會產生一個ChangeEvent事件
要換標籤必須實現ChangeListener這個介面,該介面中有
void stateChanged(ChangeEvent e)方法,當偵聽器(e)的目標已
更改其狀態時呼叫。
每一個標籤都有自己的索引,從左到右依次是0,1,2,3…
3. 幾種方法介紹:
Component add(String title,Component component)
作用:新增具有指定名字(title)的元件(component)
void addChangeListener(ChangeListener l)
作用:新增事件監聽器(ChangeListener的物件)
int getSelectedIndex()
作用:返回當前所選標籤的索引
void setEnabledAt(int index,boolean enabled)
作用:設定是否啟用 index位置的選項卡。
4. 例子:
// JPanel1.java
import javax.swing.*;
public class JPanel1 extends JPanel {
JLabel card1 = new JLabel("111");
JPanel1() {
this.add(card1);
}
}
// JPanel2.java
import javax.swing.*;
public class JPanel2 extends JPanel {
JLabel card2=new JLabel("222");
JPanel2(){
this.add(card2);
}
}
//選項卡.java
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;
public class 選項卡 extends JFrameimplements ChangeListener {
JTabbedPane Tab=newJTabbedPane(JTabbedPane.TOP);
JPanel1 card1=new JPanel1();
JPanel2 card2=new JPanel2();
public void init(){
Tab.add("卡1",card1);
Tab.add("卡2",card2);
this.add(Tab,BorderLayout.CENTER);
Tab.addChangeListener(this);
}
選項卡(){
init();
this.setTitle("選項卡");
this.setBounds(200,200,400,400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
public void stateChanged(ChangeEvent arg0) {
// TODO Auto-generatedmethod stub
if(Tab.getSelectedIndex()==0){
//getSelectedIndex()獲取選項卡索引
Tab.setEnabledAt(0,true);
//設定啟用索引為0的選項卡
}else if(Tab.getSelectedIndex()==1){
Tab.setEnabledAt(1,true);
}
}
public static void main(String[] args) {
// TODO Auto-generatedmethod stub
new 選項卡();
}
}
相關推薦
Java選項卡(JTabbedPane)的使用
JTabbedPane是一種可以放多個面板的並且可以方便切換的容器 1. 建構函式 (1)JTabbedPane( ) 建立空的JTabbedPane物件,但實際它的默 認值為JTabbedPane.Top,也就是說卡片名將放在容器頂部。 (2
選項卡(1)
lec set 樣式 gin relative ctype ive css樣式 lac 選項卡控件它提供一系列操作按鈕,單擊不同的按鈕可以在各個頁面之間進行切換。 選項卡實現的幾種方法: html+css <!DOCTYPE html> <htm
tab選項卡(1):一級tab選項卡
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <style>
選項卡(Tab)切換事件
選項卡切換事件 <style type="text/css"> *{margin: 0; padding: 0; font-family: "微軟雅黑";font-size: 14px;} #container{ width: 398px; ma
HC 原始碼分析 6:MediaInfo選項卡 (CPPageFileMediaInfo)
=====================================================Media Player Classic - HC 原始碼分析系列文章列表:===============================================
MUI框架-12-使用原生底部選項卡(凸出圖示案例)
MUI框架-12-使用原生底部選項卡(凸出圖示案例) 今天,用 mui 做 app 時,遇到了可能各位都遇到過的頭疼問題:底部中間圖示凸起,如下圖: 最後有原始碼 【提示】:有人問我在 HBuilder 中看不到底部欄,請不要慌,程式碼沒有問題,在模擬器或者真機執行才會有,
Java Swing實戰(一)JFrame和JTabbedPane容器
概述: 專案是一個桌面程式,涉及標籤和按鈕元件、佈局管理器元件、面板元件、列表框和下拉框元件等元件,以及Swing事件處理機制。 下面先從最基礎的介面開始。 /** * @author: lishuai * @date: 2018/11/26 13:51 */ public class Weimi
JS學習筆記 - 面向物件 - 選項卡 (普通選項卡改寫)
選項卡3 <script> window.onload=function () { new TabSwitch('div1'); }; function TabSwitch(id) // TabSwitch 是 id 的 物件?? { // var oDi
tab切換選項卡 (原生/jQ/vue) 實現方式
<!DOCTYPE > <html> <meta http-equiv="Content-Type" content="text/html; charset=utf
Java 6 JVM引數選項大全(中文版)
本文是基於最新的SUN官方文件Java SE 6 Hotspot VM Options 編寫的譯文。主要介紹JVM中的非穩態選項及其使用說明。 為了讓讀者明白每個選項的含義,作者在原文基礎上補充了大量的資料。希望這份文件,對正在研究JVM引數的朋友有幫助! 另
【jQuery】Tab選項卡(li之間的切換)
演示地址:暫未開放,請前往線上程式碼測試網 測試程式碼如下:固定格式在這裡就省略了,如果有問題大家可以自行調整。 No.1 jQuery版 <html> <
Java 集合系列16之 Spring Boot 配置文件 選項配置(一)
writer) face 學習 apach .sql logs aspectj via threshold springboot配置選項(一) =================================================================
java線程(四)
讀寫 img 其他 手動 dem com 字段 只讀 停止線程 java5線程並發庫 線程並發庫是JDK 1.5版本級以上才有的針對線程並發編程提供的一些常用工具類,這些類被封裝在java.concurrent包下。 該包下又有兩個子包,分別是atomic和lock
JAVA學習筆記(1)——a++與++a的區別
col int 演示 opera 解析 代碼 數據 ++i div 需求:此博客用於解釋i++與++i的區別。 過程: 1、名稱解釋 ++:自增,即在原有數據基礎上+1,再賦給原有數據。 2、程序演示 (1)代碼: 1 class OperateDemo 2 { 3
jdk源碼閱讀筆記之java集合框架(四)(LinkedList)
ray private array public 源碼閱讀 jdk源碼閱讀 oid color 解釋 關於LinkedList的分析,會從且僅從其添加(add)方法入手。 因為上一篇已經分析過ArrayList,相似的地方就不再敘述,關註點在LinkedList的特點。 屬
JAVA學習筆記(三)
byte repl efi ber 時間 clas 區分大小寫 增強for size @SuppressWarnings("resource")是用來壓制資源泄露警告的。比如使用io類,最後沒有關閉。Set集合特點:1)無序,不隨機2)元素唯一3)沒下標註意:Collect
java學習筆記(二)圖形用戶接口
star strong per getwidth cep runnable graphics s2d gb2 這個學期主要放在ACM比賽上去了,比賽結束了。不知不覺就15周了,這周就要java考試了,復習一下java吧。java的學習的目的還是讓我們學以致用,讓我們可以
JAVA------17.charles(青花瓷)抓包工具,適用安卓
java 技術 window eight charles bsp wid 9.png mage 1.安裝青花瓷 百度雲 jwindows :鏈接:http://pan.baidu.com/s/1dE6vvFV 密碼:mkce 2.查找 ip地址 3.設置手機,
自制Java虛擬機(四)-對象、new、invokespecial
utf pool tar 字節 can run 可見 frame 屬性 自制Java虛擬機(四)-對象、new、invokespecial 一、對象的表示 剛開始學Java的時候,圖書館各種教程,書名往往都是“Java面向對象高級編程”,通常作者都會與C++做個比較,列出的
JAVA泛型(轉)
強制 off 實例 emp 思想 void 成了 意義 依然 一. 泛型概念的提出(為什麽需要泛型)? 首先,我們看下下面這段簡短的代碼: 1 public class GenericTest { 2 3 public static void