Komponen yang telah diletakkan di layer yang sudah dinonaktifkan tidak dapat ditampilkan lagi dan label tab akan tampak berwarna abu-abu (tidak aktif). Sebagaimana indek elemen pada array (larik), indek tab di obyek tabbed pane juga dimulai dari 0.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | // 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 29 adalah pernyataan untuk menonaktifkan tab yang terletak di indek 1 dan 5. Pada saat iterasi yang kedua dan kelima, nilaiBol[1] dan nilaiBol[5] bernilai boolean false dan tab pada indek tersebut akan dinonaktifkan.