Banner Java

Cara Menonaktifkan Tab Di Obyek Dari Kelas JTabbedPane

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);
   }
}

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.

Menonaktifkan tab di kelas JTabbedPane

Baca artikel terkait lainnya:

Untuk memperbaiki mutu konten, Anda dapat berpartisipasi dengan cara melaporkan apabila menemukan kesalahan ketik, kata-kata rangkap, redaksi kurang pas (jelas), gambar pendukung tidak ada dan sebagainya melalui form Kontak Kami untuk mendapatkan perbaikan. Terima kasih atas kerjasamanya.

Hindro HindriantoHindro adalah pendiri sekaligus admin termasmedia.com dan topikit.com, blog online yang mengulas teknologi informasi. Dunia web mulai ditekuni tahun 2012 dengan mempelajari CMS Joomla dan Wordpress. Beberapa buku yang sekarang dipelajari antara lain PHP, HTML5, ASP.NET 4.5, JavaScript, CSS3, MySQL, Adobe Dreamweaver, Adobe Photoshop dan Adobe Flash.