Obyek tabbed pane kelas JTabbedPane dapat memiliki banyak tab. Bila ada lebih dari satu tab dan tab-tab tersebut tidak cukup ruang ditempatkan secara berderet, secara default, tab yang tersisa diletakkan di posisi baris berikutnya dan begitu seterusnya. Dengan metoda setTabLayoutPolicy(), Anda dapat menentukan pengaturan tata letak tab (tab layout policy) bila tab-tab tidak cukup ruang.

Metoda setTabLayoutPolicy mempunyai sebuah parameter tipe integer. Argumen parameter metoda ini dapat berupa salah satu dari dua konstanta bernilai integer yaitu SCROLL_TAB_LAYOUT atau WRAP_TAB_LAYOUT. Konstanta WRAP_TAB_LAYOUT adalah argumen default untuk parameter metoda setTabLayoutPolicy.

Program berikut ini adalah contoh penggunaan metoda setTabLayoutPolicy dengan memberi argumen parameter metoda dengan konstanta bernilai integer JTabbedPane.SCROLL_TAB_LAYOUT. Setiap label di tab akan diberi mnemonic berupa satu karakter yang diberi garis bawah.

// Nama file : TabLayoutPolicyAndMnemonic.java
// Mendemonstrasikan penggunaan metoda setTabLayoutPolicy

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

// Deklarasi kelas
public class TabLayoutPolicyAndMnemonic extends JFrame {

   String[] strLabel = {"General", "Computer Name", "Hardware", 
                        "Advanced", "System Restore", "Automatic Updates",
                        "Remote"};
   int[] mnemonic = {KeyEvent.VK_G, KeyEvent.VK_C, KeyEvent.VK_H,
                     KeyEvent.VK_A, KeyEvent.VK_S, KeyEvent.VK_U,
                     KeyEvent.VK_R};

   // Konstruktor
   public TabLayoutPolicyAndMnemonic() {

      JTabbedPane tabbedPane = new JTabbedPane();
      tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);

      // Menambah tab, meletakkan obyek label dan memberi mnemonic
      for (int x = 0; x < strLabel.length; x++) {
         tabbedPane.addTab(strLabel[x], null, new JLabel(strLabel[x],
            JLabel.CENTER), strLabel[x]);
         tabbedPane.setMnemonicAt(x, mnemonic[x]);
      }

      getContentPane().setLayout(new BorderLayout());
      getContentPane().add(tabbedPane, BorderLayout.CENTER);
   }   

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

      TabLayoutPolicyAndMnemonic frame = new TabLayoutPolicyAndMnemonic();
      frame.setTitle("Kelas TabLayoutPolicyAndMnemonic");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setSize(352, 120);
      frame.setVisible(true);
   }
}
Mnemonic dan pengaturan tab kelas JTabbedPane di bahasa pemrograman Java

Di pernyataan baris nomor 23, metoda setTabLayoutPolicy diberi argumen berupa konstanta integer JTabbedPane.SCROLL_TAB_LAYOUT. Dengan argumen ini, tab diletakkan secara berderet bila tidak cukup ruang untuk menampilkan semua tab yang ada. Anda dapat menggunakan sepasang tombol panah kecil di sebelah kanan obyek tabbed pane untuk menampilkan tab tersebunyi. Ketentuan tata letak tab menggunakan konstanta JTabbedPane.SCROLL_TAB_LAYOUT ini sangat praktis, tidak perlu ruang lebih untuk menampilkan semua tab yang ada.