java中jtabbedpanel_java容器:JTabbedPanel(标签面板) ----的基本用法

类头

public class JTabbedPane extends JComponent implements Serializable, Accessible, SwingConstants{}

构造方法

public JTabbedPane() 创建一个空的 TabbedPane ,默认标签位置为 JTabbedPane.TOP

public JTabbedPane(int tabPlacement) 创建空 TabbedPane与任一指定的选项卡放置: JTabbedPane.TOP , JTabbedPane.BOTTOM , JTabbedPane.LEFT ,或 JTabbedPane.RIGHT 。

public JTabbedPane(int tabPlacement,int tabLayoutPolicy)创建一个空的TabbedPane与指定的选项卡布局和选项卡布局策略。标签布局策略可以是: JTabbedPane.WRAP_TAB_LAYOUT或JTabbedPane.SCROLL_TAB_LAYOUT 。

重要方法:(下面所指便签是面板)

//事件相关的方法

public void addChangeListener(ChangeListener l) 添加一个 ChangeListener为此tabbedpane。

public void removeChangeListener(ChangeListener l) 从此 ChangeListener中移除ChangeListener。

//与标签位置相关的方法

public int getTabPlacement() 返回此标签页窗格的标签页的位置。 对应的:public void setTabPlacement(int tabPlacement) 设置此标签页窗格的标签位置。 可能的值是JTabbedPane.TOP ,JTabbedPane.BOTTOM , JTabbedPane.LEFT,JTabbedPane.RIGHT 。默认值(如果未设置)为SwingConstants.TOP 。

//与当前选择标签相关的方法

public int getSelectedIndex() 返回此选项卡窗格的当前选择的索引。 如果没有当前选择的选项卡,则返回-1。

public void setSelectedIndex(int index) 设置此选项卡窗格的所选索引。 索引必须是有效的选项卡索引或-1,表示不应选择任何选项卡(也可以在标签页窗格中没有选项卡时使用)。 如果在tabbedpane包含一个或多个选项卡时指定了-1值,则结果将被实现定义。

public Component getSelectedComponent() 返回此选项卡窗格当前选定的组件。 如果没有当前选择的选项卡,则返回null 。

public void setSelectedComponent(Component c) 设置此选项卡窗格的选定组件。 这将自动将selectedIndex设置为与selectedIndex对应的索引。

//与增加标签相关的方法

public void insertTab(String title,Icon icon,Component component, String tip, int index) 在给定的索引上插入给定组件的新选项卡,由给定的标题和/或图标表示,其中任一个可能为 null 。

title - 标签上显示的标题

icon - 要在标签上显示的图标

component - 单击此选项卡时要显示的组件。

tip - 要为此选项卡显示的工具提示

index - 插入新标签的位置( > 0 and <= getTabCount() )

注意:对应的有addTab方法

public void addTab(String title, Icon icon, Component component, String tip)

而且此方法的参数一个依此1个2个3个到最多的4个

//与删除标签相关的方法

public void removeTabAt(int index) 删除index位置的标签 。 该组件其可见性将重置为true,以确保在添加到其他容器时可见。 即此时删除的标签只是取消关联,并不删除组件

public void remove(Component component) 删除指定的Component从JTabbedPane 。 如果component为null,该方法不执行任何操作。 结果组件不复存在。对应的有public void remove(int index)

public void removeAll() 从 tabbedpane删除所有选项卡及其相应的 tabbedpane 。

//与选项卡数目有关的方法

public int getTabCount() 返回此 tabbedpane中的选项卡数。

public int getTabRunCount()返回当前用于显示选项卡的选项卡运行次数。

//背景色和前景色

public Color getBackgroundAt(int index) 返回标签背景颜色 index 。

public Color getForegroundAt(int index) 返回标签前景色为 index 。

public void setBackgroundAt(int index, Color background) 在设置背景颜色index到background可以是null ,在这种情况下选项卡的背景色默认为背景颜色tabbedpane 。 如果该索引中没有选项卡,则会引发内部异常。

public void setForegroundAt(int index, Color foreground) 将前景色设置为index至foreground ,可以为null ,…

//与所选标签是否可用的方法

public void setEnabledAt(int index,boolean enabled) 设置是否启用index的选项卡。 如果该索引中没有选项卡,则会引发内部异常。

参数

index - 应该启用/禁用的选项卡索引

enabled - 是否应启用该选项卡

public void setComponentAt(int index, Component component) 将组件设置为component至index 。 如果该索引中没有选项卡,则会引发内部异常。

参数

index - 要放置此组件的选项卡索引

component - 选项卡的组件

设置快捷键

public void setMnemonicAt(int tabIndex, int mnemonic)

参数

tabIndex - 助记符所指的标签的索引

mnemonic - 表示助记符的关键代码

//设置标签页名字的字体

setFont(font)

实例

package com.layoutPackage;

import javax.swing.*;

import javax.swing.event.ChangeEvent;

import javax.swing.event.ChangeListener;

import java.awt.*;

import java.awt.event.KeyEvent;

public class JTabPanel {

JFrame jFrame = new JFrame("JTabPanel Demo");

Container contentPane;

JTabbedPane jTabbedPane;

int jPanelLabNum = 6;

//加于jTabbedPane的五张面板

JPanel[] jPanels = new JPanel[5];

public static void main(String[] args) {

JTabPanel jTabPanel = new JTabPanel();

jTabPanel.go();

}

public void go(){

contentPane = jFrame.getContentPane();

jTabbedPane = new JTabbedPane(JTabbedPane.TOP);

contentPane.add(jTabbedPane);

designPanel();

jFrame.setDefaultCloseOperation(3);

jFrame.setVisible(true);

jFrame.setBounds(500, 50, 700, 550);

}

protected void designPanel(){

//创建面板

jPanels[0] = new JPanel();

jPanels[1] = new JPanel();

jPanels[2] = new JPanel();

jPanels[3] = new JPanel();

jPanels[4] = new JPanel();

//设置面板的背景色

jPanels[0].setBackground(Color.RED);

jPanels[1].setBackground(Color.BLUE);

jPanels[2].setBackground(Color.GREEN);

jPanels[3].setBackground(Color.YELLOW);

jPanels[4].setBackground(Color.CYAN);

//将面板加入jTabbedPanel中

jTabbedPane.add("Panel 1", jPanels[0]);

jTabbedPane.add("Panel 2", jPanels[1]);

jTabbedPane.add("Panel 3", jPanels[2]);

jTabbedPane.add("Panel 4", jPanels[3]);

jTabbedPane.add("Panel 5", jPanels[4]);

jTabbedPane.add("Lable 1", new JLabel("This is a 1 Lable"));

Font font = new Font("华文彩云", Font.BOLD, 15);

//设置标签页名字的字体

jTabbedPane.setFont(font);

//设置标签也对应的快捷键

jTabbedPane.setMnemonicAt(0, KeyEvent.VK_1);

jTabbedPane.setMnemonicAt(1, KeyEvent.VK_2);

jTabbedPane.setMnemonicAt(2, KeyEvent.VK_3);

jTabbedPane.setMnemonicAt(3, KeyEvent.VK_4);

jTabbedPane.setMnemonicAt(4, KeyEvent.VK_5);

jTabbedPane.setMnemonicAt(5, KeyEvent.VK_6);

//设置不可选中的标签页

jTabbedPane.setEnabledAt(2, false); //设置3个标签页不可选

//设置标签页的背景色

jTabbedPane.setBackground(Color.BLACK);

//设置标签页的前景色

jTabbedPane.setForegroundAt(0, Color.RED);

jTabbedPane.setForegroundAt(1, Color.BLUE);

jTabbedPane.setForegroundAt(2, Color.GREEN);

jTabbedPane.setForegroundAt(3, Color.YELLOW);

jTabbedPane.setForegroundAt(4, Color.CYAN);

jTabbedPane.setForegroundAt(5, null);

//设置标签面板的changeListener,注册事件

jTabbedPane.addChangeListener(new ChangeListener() {

@Override

public void stateChanged(ChangeEvent e) {

System.out.println("这是第:" + (jTabbedPane.getSelectedIndex() + 1) + " 个标签页: " );

}

});

}

}

运行结果如图

835129a43feeb5a9b08872e5f65ed7b4.png

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值