Di artikel Mengenal Kelas JTabbedPane Di Java, Anda diperkenalkan pada kelas JTabbedPane. Sebuah tab di obyek kelas JTabbedPane dapat dinonaktifkan (disabled) dengan menggunakan metoda setEnabledAt(int index, boolean enabled). Anda dapat menonaktifkan tab tertentu dengan menentukan indek dari tab tersebut dan memberikan nilai boolean false ke parameter enabled dari metoda setEnabledAt. Komponen yang telah diletakkan di layer yang sudah dinonaktifkan tidak dapat ditampilkan lagi dan label tab akan tampak remang-remang (lebih redup). Sebagaimana indek elemen pada array (larik), indek tab di obyek tabbed pane juga dimulai dari 0.

// Nama file : EnabledDisabledTab.java
// Mengaktifkan dan menonaktifkan sebuah tab

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

// Deklarasi kelas
public class EnabledDisabledTab extends JFrame {

   String[] namaTab = {"Close", "Open", "Add", "Save", "Update", "Delete"};
   int[] mnemonic = {KeyEvent.VK_C, KeyEvent.VK_O, KeyEvent.VK_A,
                               KeyEvent.VK_S, KeyEvent.VK_U, KeyEvent.VK_D};

   // Larik boolean untuk menonaktifkan tab pada indeks 1 dan 5.
   boolean[] nilaiBol = {true, false, true, true, true, false};

   public EnabledDisabledTab() {

      JTabbedPane tabbedPane = new JTabbedPane();

      for (int x = 0; x < namaTab.length; x++) {
         tabbedPane.addTab(namaTab[x], null, new JLabel(namaTab[x],
                                      JLabel.CENTER), null);
         tabbedPane.setMnemonicAt(x, mnemonic[x]);

         // Menonaktifkan tab (disabled)
         tabbedPane.setEnabledAt(x, nilaiBol[x]);
      }

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

   // Metoda main
   public static void main(String[] args) {
      EnabledDisabledTab frame = new EnabledDisabledTab();
      frame.setTitle("Kelas EnabledDisabledTab");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setSize(262, 130);
      frame.setVisible(true);
   }
}

Menonaktifkan tab di kelas JTabbedPane

Di blok perulangan for, baris nomor 30 adalah pernyataan untuk menonaktifkan tab yang terletak di indek 1 dan 5. Pada saat iterasi yang kedua dan kelima, nilaiBol[1] dan nilaiBol[5] akan bernilai boolean false dan tab pada indek tersebut akan dinonaktifkan atau dilumpuhkan.