Banner Java

Meletakkan Komponen Java Di Obyek Dari Kelas JTabbedPane

Di artikel Mengenal Kelas JTabbedPane Di Java, Anda diperkenalkan pada kelas JTabbedPane. Di artikel kali ini, Anda diberikan contoh program bagaimana meletakkan komponen Java lain ke dalam obyek tabbed pane. Anda tidak dapat meletakkan berbagai macam komponen secara serentak langsung ke salah satu lapisan tabbed pane, akan tetapi diperlukan bantuan obyek panel (baca kembali artikel Menggunakan Kelas JPanel Di Java). Komponen-komponen yang digunakan untuk menyusun user interfes terlebih dahulu disusun dan diatur di obyek panel dan kemudian baru menambahkan obyek panel tersebut ke salah satu lapisan dari 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);
   }
}

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

Meletakkan komponen java di obyek kelas JTabbedPane

Saat metoda addTab dari kelas JTabbedPane dieksekusi (baris nomor 42, 43 dan 44), satu layer atau lapisan (tab) akan ditambahkan di obyek tabbed pane dan satu obyek panel yang berisi komponen button akan 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)

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.