`

[转]Java应用技巧——为JTabbedPane添加关闭按钮

    博客分类:
  • GUI
阅读更多

  Java应用技巧——为JTabbedPane添加关闭按钮 收藏
JTabbedPane组件

很多人都为无法在JTabbedPane的标题上添加关闭按钮而苦恼。其实从Java SE 6开始,这个问题已经解决了,看下面这个例子:

view plaincopy to clipboardprint?

//文件名: tab.java   
  
import java.awt.*;   
import java.awt.event.*;   
import javax.swing.*;   
import java.io.*;   
  
class tab extends JFrame   
{   
 tab()   
 {   
  super("选项卡窗格");   
  setVisible(true);   
  setSize(500,310);   
  setLocationRelativeTo(null);   
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   
     
  JButton btn = new JButton("X");   
  JTabbedPane pane = new JTabbedPane();   
  JLabel lab = new JLabel("选项卡I");   
  pane.addTab("i",lab);   
  pane.setTabComponentAt(pane.indexOfComponent(lab),btn);   
  add(pane);   
 }   
 public static void main(String[] args)   
 {   
  new tab();   
 }   
}  
//文件名: tab.java

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;

class tab extends JFrame
{
 tab()
 {
  super("选项卡窗格");
  setVisible(true);
  setSize(500,310);
  setLocationRelativeTo(null);
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  
  JButton btn = new JButton("X");
  JTabbedPane pane = new JTabbedPane();
  JLabel lab = new JLabel("选项卡I");
  pane.addTab("i",lab);
  pane.setTabComponentAt(pane.indexOfComponent(lab),btn);
  add(pane);
 }
 public static void main(String[] args)
 {
  new tab();
 }
}

 

 

    运行结果如下:

 

    请注意,标题上不是文本,是一个按钮。起作用的是第22行的代码:

pane.setTabComponentAt(pane.indexOfComponent(lab),btn);

在这里,我要向大家介绍JTabbedPane类的三个方法:

    void setTabComponentAt(int index,Compomnent component)

    ——该方法用于给指定index的选项卡标题添加控件,空间可以是任何类型,只要是Component的子类。如果index超出范围,则抛出IndexOutOfBoundsException异常。若选项卡标题上已经有Component组件,则抛出IllegalArgumentException异常。

    Component getTabComponent(int index)

    ——该方法用于获取指定index的选项卡标题上的控件。如果index超出范围,则抛出IndexOutOfBoundsException异常。

    int indexOfTabComponent(Component component)

    ——该方法用于获取标题空间为component的选项卡序号。若没有符合要求的选项卡,则返回-1。

使用这三个方法,就可以设置选项卡标题上的组建了。如果设置为JPanel类型,还可以添加多个组件,这也就不用再为无法添加关闭按钮而郁闷了。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/ProComFan/archive/2010/01/02/5121244.aspx

  • 大小: 6.8 KB
分享到:
评论

相关推荐

    Java大学简明教程——实例程序设计

    Java大学简明教程——实例程序设计,这是一份专为初学者和进阶者准备的Java编程学习资源,尤其在实战应用方面具有很高的价值。它包含了一系列精心设计的实例,旨在帮助读者深入理解和掌握Java语言的核心概念以及...

    Java应用程序设计接口

    Java应用程序设计接口(API,Application Programming Interface)是Java编程语言的核心组成部分,它为开发者提供了预定义的类库、方法和接口,使得开发人员能够构建高效、可移植的Java应用程序。在下册“窗口”部分...

    Java.Swing图形界面开发与案例详解.王鹏等——第5章

    王鹏等——第5章"中,读者将学习到如何创建一个完整的Swing应用程序,从设置主窗口到添加组件,再到处理用户输入和响应事件。书中可能包含了以下实例: 1. 创建简单的Hello, World!程序,展示如何建立一个包含...

    Java.Swing图形界面开发与案例详解.王鹏等——第7章

    Java Swing是Java编程语言中用于构建桌面应用图形用户界面(GUI)的一个库,它是Java Foundation Classes (JFC)的一部分。本章"Java.Swing图形界面开发与案例详解"深入探讨了Swing组件的使用和实践,旨在帮助学习者...

    ui.rar_java ui_ui

    Java UI,全称为Java用户界面,是Java编程中用于创建和设计应用程序图形用户界面的关键部分。在Java中,UI设计通常涉及Swing、JavaFX、AWT等库,它们提供了丰富的组件和工具来构建功能丰富的交互式应用。本资料包...

    Java开发技术大全 电子版

    14.7.4选项板(JTabbedPane)使用示例485 14.7.5工具栏(JToolBar)使用示例486 14.8常用组件488 14.8.1标签(Jlabel)使用示例488 14.8.2按钮(JButton)使用示例491 14.8.3文本框(JTextField)和密码框...

    java图形设计卷-代码大全

    Java图形设计卷——代码大全,这是一份专精于Java Swing技术的学习资源,旨在帮助开发者深入理解和实践Swing库在创建图形用户界面(GUI)时的应用。Swing是Java平台上用于构建桌面应用的重要组件,它提供了丰富的...

    java通讯录

    该应用提供了两种不同的布局方式——选项卡布局和卡片布局,为用户提供了一种高效、直观的方式来管理联系人信息。下面我们将详细探讨这个Java通讯录应用的设计与实现。 首先,Java Swing是Java Foundation Classes ...

    SimpleChat程序(一对多聊天源代码java).pdf

    《构建SimpleChat一对多聊天应用——Java实现详解》 在信息技术领域,开发一款实时聊天应用程序是常见的实践项目,尤其对于初学者来说,这样的项目能够帮助他们深入理解网络编程和GUI设计的基本原理。本文将详细...

    JAVA程序设计教程第七章代码

    在本节中,我们将深入探讨Java程序设计教程的第七章——图形用户界面(GUI)的设计与实现。这一章是Java编程学习的重要组成部分,因为它涉及到如何创建直观、交互式的应用程序,使用户能通过图形化的方式与计算机...

    Java Swing之游戏设计

    以“连连看”游戏为例,我们可以逐步了解如何使用Swing设计和开发一个完整的游戏应用。 1. **初始化游戏界面**:使用`JFrame`作为顶层容器,创建游戏窗口。 2. **设置布局**:使用适当的布局管理器组织游戏板和其他...

    Java 2 图形设计卷(AWT和SWING))

    首先,AWT是Java早期提供的GUI库,它与操作系统底层密切交互,为开发者提供了基本的窗口、按钮、文本框等组件。AWT的优势在于其跨平台性,因为它是Java的一部分,可以在任何支持Java的平台上运行。然而,由于AWT直接...

    叫你如何Java图形界面设计

    在本教程中,我们将深入探讨如何使用Java进行图形界面设计,主要基于提供的PPT资源,包括“第7章 Java图形设计(二.ppt”、“第7章 Java图形界面(一.ppt”以及“第7章 Java图形设计(三)——swing.ppt”。...

    精通Java Swing程序设计.rar

    通过使用ResourceBundle和Locale对象,开发者可以轻松地为应用程序提供多语言支持。 此外,Swing提供了JTable、JTree和JList等组件,用于展示数据表格、树形结构和列表视图。这些组件可以绑定到数据模型,方便数据...

    java swing2

    ### Java Swing:面向C/S开发的基本组件介绍与应用 #### 概述 Java Swing作为一套用于构建客户端(C/S)应用程序的图形用户界面工具包,提供了丰富的组件与自定义选项,使得开发者能够创建出功能强大且外观美观的...

    《Java Swing图形界面开发与案例详解》源代码

    同时,Swing支持事件处理,通过实现ActionListener接口或者使用匿名内部类,可以为组件添加点击、键盘输入等事件的监听和响应。 布局管理是Swing中的另一个重要概念,包括FlowLayout、BorderLayout、GridLayout、 ...

    Manning - Java Swing 2nd Edition - 2005

    《Java Swing 2nd Edition》是由Manning出版社于2005年出版的一本经典教材,专注于Java图形用户界面(GUI)开发的核心技术——Swing。这本书深入浅出地介绍了如何利用Swing库来构建功能丰富的、交互性强的桌面应用...

    SWING—JAVA 基础类组件集

    标题和描述中提到的知识点是关于Java基础类组件集——JFC Swing。Swing是Java的一部分,它是JFC(Java Foundation Classes)的一个重要组件,旨在提供一种更加丰富和更加模块化的用户界面组件。由于给出的内容部分为...

    图片管理系统

    “图片管理系统”是一个基于Java语言开发的桌面应用程序,主要功能包括图片的添加、查看、编辑和删除等操作。该系统不仅适用于初学者学习Java编程的基础知识,还能够帮助用户高效地管理自己的图片资源。 #### 二、...

    第14章 创建图形用户界面GUI.ppt.zip

    GUI为用户提供了一种直观且易于操作的界面,使得非程序员也能轻松地理解和使用复杂的程序。 Java是一种广泛使用的编程语言,它提供了丰富的库和工具来创建GUI,其中最著名的是Java AWT(Abstract Window Toolkit)...

Global site tag (gtag.js) - Google Analytics