public class JTabbedPaneKnow extends JFrame
{
JTabbedPane jTabbedPane;
JPanel jPanelRed;
JPanel jPanelGreen;
JPanel jPanelYellow;
JPanel jPanelBlue;
public JTabbedPaneKnow()
{
init();
this.setBounds(200, 50, 500, 500);
this.setTitle("选项卡 - 知识");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.add(jTabbedPane);
}
public void init()
{
jPanelBlue = new JPanel();jPanelBlue.setBackground(Color.blue);jPanelBlue.setName("蓝色卡牌");
jPanelGreen = new JPanel();jPanelGreen.setBackground(Color.green);jPanelGreen.setName("绿色卡牌");
jPanelRed = new JPanel();jPanelRed.setBackground(Color.red);jPanelRed.setName("红色卡牌");
jPanelYellow = new JPanel();jPanelYellow.setBackground(Color.yellow);jPanelYellow.setName("黄色卡牌"); //第一个参数:选项卡的标题所在位置:上下左右
//第二个参数:即选项卡呈现的方式:当窗口变小时:卡标题向下排列,或不重排列出现滚动条
jTabbedPane = new JTabbedPane(JTabbedPane.TOP,JTabbedPane.SCROLL_TAB_LAYOUT); //第一个参数:即选项卡显示的标题
//第二个参数:即选项卡没张卡对应的面板
jTabbedPane.add("蓝色卡牌", jPanelBlue);jTabbedPane.add("绿色卡牌", jPanelGreen);
jTabbedPane.add("红色卡牌", jPanelRed);jTabbedPane.add("黄色卡牌", jPanelYellow); //设置默认的选项卡页,方式一:通过选项卡的索引
jTabbedPane.setSelectedIndex(1); //设置默认的选项卡页,方式二:通过选项卡变量名
jTabbedPane.setSelectedComponent(jPanelGreen); //获取当前卡页的选项卡索引
int index = jTabbedPane.getSelectedIndex();
//获取当前卡页的选项卡面板
JPanel jPanel = (JPanel) jTabbedPane.getSelectedComponent();
System.out.println(jPanel.getName()); //为选项卡添加监听器
jTabbedPane.addChangeListener(new JTabbedPaneChangeListener());
}
private class JTabbedPaneChangeListener implements ChangeListener
{
@Override
public void stateChanged(ChangeEvent e)
{
JTabbedPane jTabbedPane = (JTabbedPane) e.getSource();
JOptionPane.showMessageDialog(null, ((JPanel)jTabbedPane.getSelectedComponent()).getName()+":被打开了");
}
}
public static void main(String[] args)
{
JTabbedPaneKnow jTabbedPaneKnow = new JTabbedPaneKnow();
jTabbedPaneKnow.setVisible(true);
} }

最新文章

  1. AFN解析器里的坑
  2. jquery css属性练习
  3. hdu 4698 - Counting(思路)
  4. GitLab:解决Merge Request中Commits不更新的问题
  5. [Xamarin.Android] Fragment Tips
  6. 记录:js删除数组中某一项或几项的几种方法
  7. 计算器显示e-005什么意思
  8. Windows7如何在安全模式下卸载驱动(亲测)
  9. UIPageViewController-浅析
  10. 【原创】Android 系统稳定性 - ANR(二)
  11. ZOJ 2476 Total Amount
  12. java面试题—精选30道Java笔试题解答(二)
  13. 001-List,数组,Set,Map属性的映射
  14. PC装MAC(VM虚拟机)想体验苹果系统的福利
  15. 手机端-ajax跨域请求滚屏分页
  16. 再谈git和github-深入理解-3
  17. RxSwift学习笔记9:amb/tabkeWhile/tabkeUntil/skipWhile/skipUntil
  18. 获取字段唯一值工具- -ArcPy和Python案例学习笔记
  19. RabbitMQ消息队列名词解释[转]
  20. pip 解决 ImportError: cannot import name 'main'

热门文章

  1. CSDN博客排名第一名,何许人也
  2. 数字运算、ASCII
  3. clear:both后margin-top不起作用
  4. td之overflow:hidden 多余文本隐藏效果
  5. //Build/ 2014 开发者大会Azure重点整理
  6. Codeforces Round#2
  7. 动态调用python类和函数
  8. java String分类trim,substring,replaceAll,indexOf使用功能
  9. 1.语言概述-JavaScript权威指南笔记
  10. IE7下浮动元素的内容自动换行的BUG解决方法