Menggunakan kelas JPanel di Java

Menggunakan Kelas JPanel Di Java

Meletakkan beberapa komponen Java yang berlainan jenis ke dalam content pane sesuai dengan susunan yang diinginkan tentu akan menjadi hal yang rumit, terlebih lagi bila Anda tidak menggunakan atau menguasai IDE seperti NetBeans, Eclipse atau JCreator. Anda tidak cukup hanya mengandalkan layout manager yang tentu saja memiliki keterbatasan. Untuk mengatasi masalah ini, Anda dapat menggunakan bantuan obyek panel dari kelas JPanel.

Panel berfungsi sebagai container component (komponen wadah) dimana komponen Java lainnya diletakkan. Anda juga dapat meletakkan panel di dalam panel yang lain. Layout manager default untuk kelas JPanel adalah FlowLayout.

Baca artikel:

Anda dapat merubah layout manager default ini sesuai dengan kebutuhan. Selain sebagai komponen wadah, panel juga biasa digunakan sebagai kanvas untuk menggambar obyek berdimensi dua atau tiga seperti bujur sangkar, lingkaran, persegi panjang dan sebagainya.

Baca artikel Membuat Frame Di Java Dengan Kelas JFrame

Kelas JPanel adalah lightweight container yang dikode secara lengkap menggunakan Java dan tidak tergantung pada platform. Adapun hierarki turunan dari kelas JPanel adalah sebagai berikut:

Hierarki kelas JPanel di Java

JPanel mempunyai empat buah konstruktor untuk membuat atau mengkonstruksi obyek panel. Tabel di bawah ini adalah dua konstruktor kelas JPanel yang sering digunakan di dalam program Java:

Tabel Konstruktor Kelas JPanel
Konstruktor Keterangan
JPanel() Mengkonstruksi obyek JPanel dengan FlowLayout sebagai layout manager default
JPanel(LayoutManager layout) Mengkontruksi obyek JPanel dengan menentukan layout manager.

Berikut ini adalah contoh program Java membuat antar muka grafis (GUI) yang terdiri dari beberapa komponen Java seperti obyek dari kelas JLabel, JTextField dan JButton yang kemudian disunan sesuai dengan tata letak tertentu. Contoh program ini menggunakan obyek panel dari kelas JPanel untuk membantu penyusunan komponen agar mendapatkan hasil sesuai dengan harapan.

// Nama file : DemoPanel.java
// Mendemonstrasikan penyusunan komponen dengan bantuan panel
 
// mengimpor kelas
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JLabel;
import java.awt.GridLayout;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Container;
 
// Deklarasi kelas
public class DemoPanel extends JFrame {
 
   public DemoPanel() {
 
      JTextField text1, text2, text3;
      JLabel label1, label2, label3;
      JButton button1, button2;
      JPanel panel1, panel2, panel3;
 
      label1 = new JLabel("Nilai Pertama");
      label2 = new JLabel("Nilai Kedua");
      label3 = new JLabel("Hasil kalkulasi");
  
      panel1 = new JPanel();
      panel1.setLayout(new GridLayout(3, 1));
      panel1.add(label1);
      panel1.add(label2);
      panel1.add(label3);
 
      text1 = new JTextField(15);
      text2 = new JTextField(15);
      text3 = new JTextField(15);
 
      panel2 = new JPanel();
      panel2.setLayout(new GridLayout(3, 1));
      panel2.add(text1);
      panel2.add(text2);
      panel2.add(text3);
 
      button1 = new JButton("Kali (x)");
      button2 = new JButton("Tambah (+)");
 
      panel3 = new JPanel();
      panel3.setLayout(new FlowLayout(FlowLayout.RIGHT));
      panel3.add(button1);
      panel3.add(button2);
 
      Container container = getContentPane();
      container.setLayout(new BorderLayout());
      container.add(panel1, BorderLayout.LINE_START);
      container.add(panel2, BorderLayout.LINE_END);
      container.add(panel3, BorderLayout.PAGE_END);
 
   }
 
   // Metoda main
   public static void main(String[] args) {
      DemoPanel frame = new DemoPanel();
      frame.setTitle("Kelas DemoPanel");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setSize(280, 150);
      frame.setVisible(true)
   }
}

Menggunakan kelas JPanel di Java

Untuk menghasilkan user interface yang sesuai keinginan, dapat digunakan panel sebagai komponen wadah pembantu. Anda terlebih dahulu perlu menentukan layout manager dari panel untuk disesuaikan dengan kebutuhan sebelum meletakkan komponen di dalamnya. Komponen dapat diletakkan dan disusun terlebih dahulu di dalam panel.

Bila diperlukan, sebuah obyek panel juga dapat diletakkan di dalam obyek panel yang lain. Panel yang telah berisi komponen Java kemudian diletakkan ke dalam content pane dari frame. Anda perlu menentukan layout manager dari content pane untuk dapat mengatur penempatan panel sesuai keinginan.

SUKAI DAN BAGIKAN ARTIKEL INI:
Pin It