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.

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.