Di artikel Kelas JTabbedPane, Anda diperkenalkan pada kelas JTabbedPane beserta konstruktor dan metodanya. Di artikel kali ini, Anda diberi contoh program cara meletakkan komponen Java lain ke obyek tabbed pane. Anda tidak dapat meletakkan berbagai macam komponen serentak langsung ke lapisan tabbed pane, tetapi diperlukan bantuan obyek panel dari Kelas JPanel. Komponen Java terlebih dahulu disusun dan diatur di obyek panel dan obyek panel kemudian ditambahkan ke salah satu lapisan obyek tabbed pane.

// Nama file : DemoTabbedPane.java
// Menempatkan komponen Java lain ke obyek tabbed pane

// Mengimpor kelas
import javax.swing.*;
import java.awt.*;

// Mendeklarasikan kelas
public class DemoTabbedPane extends JFrame {

   private JTabbedPane tabbedPane;
   private JPanel flPanel, glPanel, blPanel;

   public DemoTabbedPane() {

      flPanel = new JPanel();
      flPanel.setLayout(new FlowLayout(FlowLayout.LEFT, 6, 6));
      flPanel.add(new JButton("Tombol 1"));
      flPanel.add(new JButton("Tombol 2"));
      flPanel.add(new JButton("Tombol 3"));
      flPanel.add(new JButton("Tombol 4"));
      flPanel.add(new JButton("Tombol 5"));

      glPanel = new JPanel();
      glPanel.setLayout(new GridLayout(2, 3));
      glPanel.add(new JButton("Tombol 6"));
      glPanel.add(new JButton("Tombol 7"));
      glPanel.add(new JButton("Tombol 8"));
      glPanel.add(new JButton("Tombol 9"));
      glPanel.add(new JButton("Tombol 10"));

      blPanel = new JPanel();
      blPanel.setLayout(new BorderLayout());
      blPanel.add(new JButton("Tombol 11"), BorderLayout.PAGE_START);
      blPanel.add(new JButton("Tombol 12"), BorderLayout.PAGE_END);
      blPanel.add(new JButton("Tombol 13"), BorderLayout.LINE_START);
      blPanel.add(new JButton("Tombol 14"), BorderLayout.LINE_END);
      blPanel.add(new JButton("Tombol 15"), BorderLayout.CENTER);

      // Membuat tabbed pane dan meletakkan ketiga obyek panel
      tabbedPane = new JTabbedPane();
      tabbedPane.addTab("Flow Layout", null, flPanel, "Flow Layout");
      tabbedPane.addTab("Grid Layout", null, glPanel, "Grid Layout");
      tabbedPane.addTab("Border Layout", null, blPanel, "Border Layout");

      // Meletakkan obyek tabbed pane di obyek JFrame
      getContentPane().setLayout(new BorderLayout());
      getContentPane().add(tabbedPane, BorderLayout.CENTER);
   }

   // Metoda main
   public static void main(String[] args) {

      DemoTabbedPane frame = new DemoTabbedPane();
      frame.setTitle("Kelas DemoTabbedPane");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setSize(310, 150);
      frame.setVisible(true);
   }
}
Meletakkan komponen Java di obyek kelas JTabbedPane

Dari contoh program di atas, komponen yang diletakkan di obyek tabbed pane adalah obyek button dari kelas JButton. Obyek button terlebih dahulu disusun dan diletakkan dengan tata letak (layout) berbeda di obyek panel (flPanel, glPanel dan blPanel). Setiap obyek panel mempunyai lima obyek button yang dikonstruksi melalui anonymous object. Untuk menambahkan obyek panel ke obyek tabbed pane, digunakan metoda addTab.

Saat metoda addTab dari kelas JTabbedPane dieksekusi (baris nomor 42, 43 dan 44), satu layer atau lapisan (tab) ditambahkan di obyek tabbed pane dan satu obyek panel yang berisi komponen button diletakkan di layer tersebut. Metoda addTab mempunyai tiga variasi jumlah parameter. Selain metoda addTab yang mempunyai empat parameter, dua variasi lain dari metoda addTab adalah :

addTab(String title, Component component)

addTab(String title, Icon icon, Component component)

Selain metoda addTab, Anda juga dapat menambah layer (tab) dan meletakkan obyek di tab tersebut menggunakan metoda insertTab. Berikut ini adalah penanda metoda (method signature) dari metoda insertTab:

insertTab(String title, Icon icon, Component component String tip, int index)