Mengatur letak komponen di Java dengan kelas BorderLayout

Mengatur Letak Komponen Menggunakan Kelas BorderLayout Di java

Komponen Java seperti obyek dari kelas JLabel, JTable, JTextField, JButton, JList yang diletakkan di kelas-kelas wadah (container classes) seperti kelas JFrame, JApplet atau JPanel dapat disusun atau diatur sesuai keinginan. Untuk mengatur tata letak komponen di kelas-kelas wadah, Anda dapat menggunakan layout manager.

Semua layout manager di Java mengimplementasikan interface LayoutManager. Layout manager adalah obyek yang dibuat atau dikonstruksi dari kelas FlowLayout, GridLayout, BorderLayout, BoxLayout, CardLayout, GroupLayout atau SpringLayout. FlowLayout adalah layout manager default untuk kelas Applet, Panel dan JPanel. BorderLayout adalah layout manager default untuk content pane dari kelas JFrame dan JApplet.

Obyek dari kelas BorderLayout dibagi menjadi lima area yang diwakili oleh lima konstanta yaitu BorderLayout.PAGE_START, BorderLayout.PAGE_END, BorderLayout.LINE_START, BorderLayout.LINE_END dan BorderLayout.CENTER. Container classes seperti JFrame dan JApplet menggunakan BorderLayout sebagai layout default. Berikut ini adalah konstruktor dari kelas BorderLayout:

Tabel Konstruktor Kelas BorderLayout

Konstruktor Keterangan
BorderLayout() Mengkonstrusi obyek BorderLayout tanpa menentukan ukuran gap (celah).
BorderLayout(int horizontalGap, int verticalGap) Mengkonstruksi obyek BorderLayout dengan menentukan ukuran gap (celah) diantara komponen.

Untuk meletakkan komponen ke dalam content pane, digunakan metoda add(Component component, int area). Bila wadah atau tempat komponen adalah dari kelas JFrame atau JApplet, Anda tidak perlu lagi menentukan layout manager karena secara default telah menggunakan layout manager ini. Anda cukup mengatur gap (celah), baik horisontal dan vertikal, menggunakan metoda setHgap(int hGap) dan setVgap(int vGap).

Mengatur atau menyusun komponen Java di container classes memang tidak mudah. Anda tidak cukup menggunakan layout manager. Untuk mengatur atau menyusun komponen Java sesuai dengan keinginan, Anda dapat menggunakan bantuan kelas JPanel.

Berikut ini adalah contoh program menggunakan layout manager dari kelas BorderLayout. Lima buah obyek tombol dari kelas JButton akan diletakkan ke dalam content pane dari obyek kelas DemoBorderLayout yang merupakan subclass dari kelas JFrame.

 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
// Nama file : DemoBorderLayout.java
// Mendemonstrasikan penggunaan layout manager BorderLayout
 
// Mengimpor kelas
import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.Container;
import java.awt.BorderLayout;
 
// Deklarasi kelas
public class DemoBorderLayout extends JFrame {
 
   public DemoBorderLayout() {
 
      // Border layout adalah default untuk
      // content pane dari kelas JFrame 
      Container container = getContentPane();
      container.add(new JButton("PAGE_START"), BorderLayout.PAGE_START);
      container.add(new JButton("PAGE_END"), BorderLayout.PAGE_END);      
      container.add(new JButton("LINE_START"), BorderLayout.LINE_START);
      container.add(new JButton("LINE_END"), BorderLayout.LINE_END);
      container.add(new JButton("CENTER"), BorderLayout.CENTER);
   }
 
   // Metoda main
   public static void main(String[] args) {
 
      DemoBorderLayout frame = new DemoBorderLayout();
      frame.setTitle("Kelas DemoBorderLayout");
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setSize(310, 155);
      frame.setVisible(true);
   }
}

Mengatur letak komponen di Java dengan kelas BorderLayout

Dari kode program di atas, layout manager tidak ditentukan karena secara default telah menggunakan layout manager BorderLayout. Tampak dari hasil eksekusi program, celah horisontal dan vertikal antara komponen satu dengan komponen yang lain tidak tampak. Kelima tombol dari kelas JButton memenuhi semua area content pane.

Obyek kelas JButton yang ditempatkan di area PAGE_START dan PAGE_END akan merentang secara horisontal memenuhi content pane, obyek kelas JButton yang ditempatkan di area LINE_START dan LINE_END akan merentang secara vertikal dan obyek kelas JButton yang ditempatkan di area CENTER akan merentang secara horisontal dan vertikal.

Gap (celah) antar komponen dapat diatur melalui nilai untuk parameter horizontalGap dan verticalGap saat obyek kelas BorderLayout dikonstruksi. Anda juga dapat memperindah komponen dengan memberi warna serta menentukan dimensinya.

SUKAI DAN BAGIKAN ARTIKEL INI:
Pin It