`

JTabbedPane标签面板例子

阅读更多

隐藏面板使用

 

package Assis;

 

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

 

public class TabbedPaneDemo extends JFrame implements ActionListener {

private static final long serialVersionUID = 1L;

private ImageIcon m_tabimage;

private ImageIcon m_tab1;

private ImageIcon m_tab2;

private ImageIcon m_tab3;

private JTabbedPane m_tabbedPane;

private JButton m_topButton;

private JButton m_bottomButton;

private JButton m_leftButton;

private JButton m_rightButton;

private JButton m_addButton;

private JButton m_removeButton;

 

public TabbedPaneDemo() {

// 创建选项卡的图标

m_tabimage = new ImageIcon("tabimage.gif");

// 创建三个图标

m_tab1 = new ImageIcon("1.gif");

m_tab2 = new ImageIcon("2.gif");

m_tab3 = new ImageIcon("3.gif");

// ===========================

// 下面是功能按钮面板的创建过程

// ===========================

JPanel buttonPanel = new JPanel();

buttonPanel.setLayout(new GridLayout(1, 6));

m_topButton = new JButton("顶部");

m_bottomButton = new JButton("底部");

m_leftButton = new JButton("左边");

m_rightButton = new JButton("右边");

m_addButton = new JButton("添加选项卡");

m_removeButton = new JButton("删除选项卡");

// 添加事件监听器

m_topButton.addActionListener(this);

m_bottomButton.addActionListener(this);

m_leftButton.addActionListener(this);

m_rightButton.addActionListener(this);

m_addButton.addActionListener(this);

m_removeButton.addActionListener(this);

// 把四个功能按钮加入功能按钮面板中

buttonPanel.add(m_topButton);

buttonPanel.add(m_bottomButton);

buttonPanel.add(m_leftButton);

buttonPanel.add(m_rightButton);

buttonPanel.add(m_addButton);

buttonPanel.add(m_removeButton);

 

// 把选项卡窗格容器和功能按钮面板加入到内容窗格容器中

m_tabbedPane = new JTabbedPane(SwingConstants.TOP);

getContentPane().add("South", buttonPanel);

getContentPane().add("Center", m_tabbedPane);

 

// 创建三个选项卡

createTab();

createTab();

createTab();

// 设置显示第一个选项卡

m_tabbedPane.setSelectedIndex(0);

}

 

// 创建选项卡

public void createTab() {

JLabel label = null;

switch (m_tabbedPane.getTabCount() % 3) {

case 0:

label = new JLabel("Tab #" + m_tabbedPane.getTabCount(), m_tab1,

SwingConstants.CENTER);

break;

case 1:

label = new JLabel("Tab #" + m_tabbedPane.getTabCount(), m_tab2,

SwingConstants.CENTER);

break;

case 2:

label = new JLabel("Tab #" + m_tabbedPane.getTabCount(), m_tab3,

SwingConstants.CENTER);

break;

}

label.setVerticalTextPosition(SwingConstants.BOTTOM);

label.setHorizontalTextPosition(SwingConstants.CENTER);

label.setOpaque(true);

label.setBackground(Color.white);

// 把新创建的选项卡添加到选项卡容器中

m_tabbedPane.addTab("Tab #" + m_tabbedPane.getTabCount(), m_tabimage,

label);

}

 

// 删除选项卡

public void deleteTab() {

// 删除最后一个选项卡

if (m_tabbedPane.getTabCount() > 0)

m_tabbedPane.removeTabAt(m_tabbedPane.getTabCount() - 1);

}

 

// 处理按钮事件

public void actionPerformed(ActionEvent e) {

if (e.getSource() == m_topButton)

m_tabbedPane.setTabPlacement(SwingConstants.TOP);

else if (e.getSource() == m_bottomButton)

m_tabbedPane.setTabPlacement(SwingConstants.BOTTOM);

else if (e.getSource() == m_leftButton)

m_tabbedPane.setTabPlacement(SwingConstants.LEFT);

else if (e.getSource() == m_rightButton)

m_tabbedPane.setTabPlacement(SwingConstants.RIGHT);

else if (e.getSource() == m_addButton)

createTab();

else if (e.getSource() == m_removeButton)

deleteTab();

// 重新绘制选项卡容器

m_tabbedPane.revalidate();

m_tabbedPane.repaint();

}

 

// 程序的入口方法

public static void main(String[] args) {

TabbedPaneDemo frame = new TabbedPaneDemo();

// 设置框架窗体的事件监听(关闭窗体事件)

frame.addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {

System.exit(0);

}

});

// 显示框架窗体

frame.pack();

frame.setVisible(true);

}

}

 

出处  : http://lvdong5830.iteye.com/blog/574695

分享到:
评论

相关推荐

    选项卡面板例子JTabbedPane

    在这个例子中,我们将深入探讨`JTabbedPane`的使用,以及如何在Eclipse环境中运行这个示例。 首先,`JTabbedPane`是`javax.swing`包中的一个类,它允许用户通过点击不同的选项卡来切换不同的面板或内容。这对于将...

    java Swing实现选项卡功能(JTabbedPane)实例代码

    下面是一个创建 `JTabbedPane` 并设置选项卡位置在顶部的例子: ```java JFrame jframe = new JFrame("TEST"); Container c = jframe.getContentPane(); JTabbedPane tabPane = new JTabbedPane(JTabbedPane.TOP); ...

    java---swing自学例子(有50个例子)

    首先,Swing 提供了一系列的组件,如按钮(JButton)、文本框(JTextField)、标签(JLabel)、面板(JPanel)、滚动窗格(JScrollPane)、菜单(JMenu)、对话框(JOptionPane)等,这些都是构建用户界面的基本元素。在这些例子中...

    TabbedPane使用实例

    在Swing组件中,`JTabbedPane`是一个非常实用的工具,它允许开发者在一个窗口内组织多个面板,每个面板可以看作一个独立的功能区域,用户可以通过点击不同的标签在这些面板之间切换。`TabbedPane`使得应用的界面更加...

    java实现tab可关闭(chrome风格)

    JTabbedPane是Swing提供的一种容器,它允许我们在一个窗口中创建多个可切换的面板,每个面板就像是一个单独的“标签”或者“选项卡”。我们可以利用它的API来添加、删除和切换面板,并且可以设置每个标签的文本、...

    Jave Swing Tab页签窗体,界面漂亮,毕业设计案例

    多标签页界面在很多应用程序中非常常见,如文档编辑器、设置面板等,它允许用户在不同的功能区域之间轻松切换。 首先,要创建一个TabbedPane,我们可以使用`javax.swing.JTabbedPane` 类。这是一个容器组件,可以...

    JAVA swing类例子

    4. **JTabbedPaneDemo.java**:`JTabbedPane`组件允许在多个面板之间切换,每个面板代表一个“标签”或“选项卡”。此示例可能包含如何添加、删除和管理这些选项卡,以及如何设置自定义图标和标题。 5. **...

    GUI.rar_java的readme例子

    5. **Swing组件**:除了基本组件外,Swing还提供了一些增强型组件,如JTable用于显示表格数据,JTree用于展示树形结构,以及JTabbedPane用于创建多面板界面等。 6. ** Swing的外观(LookAndFeel)**:Java Swing...

    第7章 GUI编程之Swing+ppt+pdf资料+例子

    JTabbedPane组件允许在单一窗口中组织多个面板,用户可以通过标签进行切换,提供了更高效的界面组织方式。 10. SwingWorkers 由于Swing组件是线程安全的,因此所有UI更新必须在事件调度线程(Event Dispatch ...

    java程序40例 源代码

    这些源代码实例涵盖了Swing中的各种组件,如按钮(JButton)、文本框(JTextField)、标签(JLabel)、面板(JPanel)、菜单(JMenu和JMenuItem)、滚动面板(JScrollPane)以及对话框(JOptionPane)等。...

    Java+Swing的技术总结

    另一个例子`jTabbedPane1.add()`则用于添加新的面板,其中组件和标题都是必需的。`jTabbedPane1.setSelectedIndex()`则用于设置当前显示的选项卡索引。 接着,我们讨论如何判断字符串是否能转换为整数。这个功能...

    简单的JAVA控件处理

    `JTabbedPaneDemo`则展示了JTabbedPane控件,这个组件可以创建带有多个面板的标签页,每个面板可以有自己的控件和内容。 密码输入通常涉及到`JPasswordFieldDemo`,JPasswordField控件用于安全地输入密码,字符会被...

    Java Swing实例

    Swing 提供了一整套的组件,包括按钮(JButton)、文本框(JTextField)、标签(JLabel)、面板(JPanel)、滚动窗格( JScrollPane)、菜单(JMenu)和对话框(JOptionPane)等。这些组件不仅在外观上可定制,而且...

    欣赏Swing的大厦结构(意外的发现)

    大厦的中间层由一些复杂的组件和布局管理器构成,如JTable(表格)、JTree(树形视图)、JTabbedPane(选项卡面板)和JScrollPane(滚动面板)。这些组件使得开发者可以创建数据密集型的用户界面,如数据库查看或...

    4个swing界面.rar_java swing_swing_swing 界面_个_界面

    Swing还提供了一些高级组件,如JTable(表格)、JTree(树形结构)和JTabbedPane(选项卡面板),这些可以帮助创建更复杂的用户界面。 总之,这个Java Swing界面的压缩包是一个很好的学习资源,它不仅涵盖了基本的...

    Java Swing 组件全演示源代码.zip

    首先,Swing提供了大量的组件,如按钮(JButton)、文本框(JTextField)、标签(JLabel)、面板(JPanel)、滚动窗格(JScrollPane)、菜单(JMenu)、对话框(JOptionPane)等。这些组件使得开发者能够创建功能丰富的图形用户...

    Manning - JAVA Swing 2nd Edition (2004) and Source Code

    在Swing中,基本的组件包括按钮(JButton)、文本框(JTextField)、标签(JLabel)、面板(JPanel)、滚动窗格(JScrollPane)、菜单(JMenu和JMenuItem)等。这些组件可以通过布局管理器(如FlowLayout、...

    Tab使用实例

    `javax.swing.JTabbedPane`是Java Swing提供的一种组件,它允许在多个面板之间切换,每个面板代表一个`Tab`。以下是一个简单的`TabbedPane`创建实例: ```java import javax.swing.JFrame; import javax.swing....

    JavaSwing 图形界面开发与案例详解源文件

    8. **Swing 小组件**:Swing 还包含了一些特殊的小组件,如 JTabbedPane(选项卡面板)、JSplitPane(分割窗格)和 JToolBar(工具栏)。这些源代码将展示如何利用它们来增强用户界面的功能。 9. **国际化支持**:...

    java-中swing结构与布局管理器(ppt文档).ppt

    这个例子展示了如何创建一个简单的Swing应用,包含一个标题为"Hello, Swing"的窗口,并在其中显示一个"Hello, World!"的标签。通过组合使用不同类型的组件、容器和布局管理器,开发者可以构建出功能丰富、用户友好的...

Global site tag (gtag.js) - Google Analytics