package org.lyl.d4;
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JSplitPane;
import javax.swing.JTabbedPane;
import javax.swing.JTextArea;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
/**
* 练习Swing的卡片式窗格
* 卡片式窗格的样子就和现在多标签形式的浏览器一样,所谓的卡片就是标签,我们可以为每一个卡片窗格添加一个组件,使用JTabbedPane可以有效的
* 节省窗体使用空间。
* @author yalong
*
*/
public class JTabbedPaneTest extends JFrame{
private Container container = null ;
private JTabbedPane tabbedPane = null ;
public JTabbedPaneTest(){
//设置窗体基本属性
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(600,500);
setTitle("JTabbedPane练习");
container = getContentPane();
//创建默认在顶部的JTabbedPane
tabbedPane = new JTabbedPane();
//创建在左边的JTabbedPane,可以在上下左右四个方向显示JTabbedPane
tabbedPane = new JTabbedPane(JTabbedPane.LEFT);
//按照代码顺序为卡片窗格添加卡片,每个卡片窗格中放置有不同的组件,并且addTab方法也有多种重载方式
tabbedPane.addTab("A", new JButton("btn-A"));
tabbedPane.addTab("B", new JLabel("lbl-B"));
tabbedPane.addTab("C",new ImageIcon(JTabbedPaneTest.class.getResource("/png-0003.png")),new JSplitPane(),"这是提示信息,哈哈");
tabbedPane.addTab("D",new JPasswordField());
tabbedPane.addTab("E",new JTextArea());
//注册卡片窗格选择改变事件
tabbedPane.addChangeListener(new ChangeListener(){
public void stateChanged(ChangeEvent arg0) {
//禁用选择的卡片窗格
tabbedPane.setEnabledAt(tabbedPane.getSelectedIndex(), false);
}
});
//添加到内容窗格
container.add(tabbedPane,BorderLayout.CENTER);
}
public static void main(String[] args) {
new JTabbedPaneTest().setVisible(true);
}
}
分享到:
相关推荐
在Java Swing库中,`JTabbedPane`是一个用于创建多面板界面的组件,它允许用户在不同的视图之间切换。这个特定的项目是关于如何在`JTabbedPane`的每个选项卡上添加一个关闭按钮,使得用户能够动态地移除不需要的面板...
标题提到的"几个漂亮的SWING组件(源代码)"很可能是包含了一些自定义或者美化过的Swing组件示例,供开发者参考学习。 在Swing组件库中,有许多基础和高级组件,包括但不限于: 1. **JFrame**: 这是大多数Swing...
包含swing入门组件完整示例, 几乎包含swing所有组件介绍 ,可以带你入门了解swing的各种UI效果和使用示例,让你对swing有个整体了解. 顶层容器:JFrame/JDialog/JWINDOW 容器:JTabbedPane/JScrollPane/JSplitPane/...
在这个"Swing组件demo"中,我们可以深入学习Swing组件的使用方法和特性。 Swing组件包括但不限于: 1. **JFrame**: JFrame是窗口的基础类,它为其他组件提供了一个容器。在Swing应用中,通常会创建一个JFrame实例...
总的来说,这个压缩包提供了一个全面的Java Swing组件演示,涵盖了组件的使用、布局管理和事件处理等方面,是学习和理解Swing GUI编程的宝贵资源。通过深入研究`SwingTest.java`源代码,开发者可以掌握如何使用Swing...
学习和实践这些代码可以帮助开发者深入理解Swing组件的工作原理,以及如何在实际项目中灵活应用。 总之,Swing是Java中用于构建桌面应用程序的强大工具,它提供了丰富的组件库,可以满足各种用户界面的需求。通过...
在本实例中,我们将深入探讨如何使用`JTabbedPane` 实现选项卡功能,并提供相关代码示例。 首先,创建一个`JTabbedPane` 对象是实现选项卡功能的第一步。你可以通过调用其构造函数 `JTabbedPane(int tabPlacement)`...
源码示例对于学习Swing组件的行为、事件处理和布局管理至关重要。通过查看和运行源码,你可以了解如何实例化组件,设置属性,添加事件监听器,以及如何组织组件在窗口中的布局。建议使用IDE(如IntelliJ IDEA或...
这个开发源代码集合显然包含了全面的Swing组件、示例和可能的工具,适用于Java SDK 1.6版本。下面我们将深入探讨Java Swing的相关知识点。 1. **Swing组件**: - **JFrame**: 是Swing中的顶级容器,通常作为应用...
通过深入学习这些知识点,并结合提供的代码示例,新手可以逐步掌握Java Swing的基本用法,进一步提升GUI编程能力。在实际项目中,还需要注意性能优化、线程安全以及与数据库或其他服务的集成等问题,这些都是进阶的...
本教程将引导你逐步了解Swing的基础知识,并通过实际代码示例来帮助你掌握Swing的基本用法。 一、Swing简介 Swing是在Java 1.2版本中引入的,作为AWT(Abstract Window Toolkit)的增强版,提供了更多功能和更好的...
4. **模型-视图-控制器(MVC)模式**:Swing组件遵循MVC模式,使得代码结构清晰,易于维护。例如,JTable和JList组件允许开发者分离数据模型和显示视图。 5. **对话框和通知**:Swing提供了各种对话框(JOptionPane...
Java Swing中的`JTabbedPane`组件是用于在单一窗口中展示多个...在`mayue`这个文件中,可能包含了使用`JTabbedPane`实现多任务的示例代码或教程,通过学习和实践这些内容,可以进一步深化对`JTabbedPane`的理解和运用。
Swing组件的一大优点是它们是轻量级的,这意味着它们完全由Java代码实现,而不是依赖于操作系统提供的底层图形支持,这使得Swing应用具有跨平台的特性。 首先,Swing提供了丰富的组件库,包括JButton、JLabel、...
通常,这样的教程会包含代码示例、解释以及如何运行和测试这些示例的信息。 标签中的"java_swing swing swing_界面 个 界面"进一步强调了这是关于Java Swing界面的教程,特别是关注于创建多个独立的界面。 在...
Swing组件是轻量级的,意味着它们完全由Java代码实现,这使得它们在性能上可能略逊于AWT的重量级组件,但胜在可以在所有支持Java的平台上一致地运行。 在Java Swing中,JFrame是顶级容器,用于承载其他组件。JPanel...
图片"clip_image1.jpg"和"clip_image2.jpg"可能是代码示例的截图,或者展示了Swing组件的运行效果。通过这些图片,读者可以直观地理解Swing组件如何在实际应用中工作。 总的来说,学习和理解Swing,开发者能够创建...
AWT组件是重量级的,与操作系统紧密关联,而Swing组件是轻量级的,由Java完全实现,这使得Swing应用在不同操作系统上具有一致的外观和行为。 在“精通Java Swing程序设计”这本书中,你将学习如何创建基本的窗口和...
Swing是Java编程语言中用于构建图形用户界面(GUI)的一个强大的工具包,它是Java Foundation Classes (JFC)的一部分...从文件名列表来看,可能包含了各种Swing组件的实例代码,可以逐一研究和运行,以加深理解和掌握。