Skip to Main Content
Java Cookbook
book

Java Cookbook

by Ian F. Darwin
June 2001
Intermediate to advanced content levelIntermediate to advanced
888 pages
21h 1m
English
O'Reilly Media, Inc.
Content preview from Java Cookbook

A Tabbed View of Life

Problem

These layouts don’t include a tab layout, and you need one.

Solution

Use a JTabbedPane.

Discussion

The JTabbedPane class acts as a combined container and layout manager. It implements a conventional tab layout, which looks like Figure 13-2.

JTabbedPane: two views in Java Look and one in MS-Windows Look

Figure 13-2. JTabbedPane: two views in Java Look and one in MS-Windows Look

To add a tab to the layout, you do not use setLayout( ). You simply create the JTabbedPane and call its addTab( ) method, passing in a String and a Component. Example 13-1 is the code for our simple program.

Example 13-1. TabPaneDemo.java

import javax.swing.*;

public class TabPaneDemo {
    protected JTabbedPane tabPane;
    public TabPaneDemo(  ) {
        tabPane = new JTabbedPane(  );
        tabPane.add(new JLabel("One", JLabel.CENTER), "First");
        tabPane.add(new JLabel("Two", JLabel.CENTER), "Second");
    }

    public static void main(String[] a) {
        JFrame f = new JFrame("Tab Demo");
        f.getContentPane().add(new TabPaneDemo(  ).tabPane);
        f.setSize(120, 100);
        f.setVisible(true);
    }
}

See Also

The third screen shot in Figure 13-2 shows the program with a MS-Windows look and feel, instead of the default Java look and feel. See Section 13.13 for how to change the look and feel of a Swing-based GUI application.

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Practical Cloud-Native Java Development with MicroProfile

Practical Cloud-Native Java Development with MicroProfile

Emily Jiang, Andrew McCright, John Alcorn, David Chan, Alasdair Nottingham
Distributed Computing in Java 9

Distributed Computing in Java 9

Raja Malleswara Rao Malleswara Rao Pattamsetti

Publisher Resources

ISBN: 0596001703Supplemental ContentCatalog PageErrata