Skip to main content

Kelas GridBagLayout

Kelompok M

11.11.4638 YOGI HARIES PRAMONO
11.11.4684 YOSE ABDURRAHMAN BRILIANTO
11.11.4660 YULIUS AGATO
11.11.4648 HUSAIN ASEPSA CHOLIS
11.11.4670 SEPTI BARKAH ISTIANT

A. Kelas GridBagLayout


java.lang.Object
java.awt.GridBagLayout
Semua Diimplementasikan Interfaces:
LayoutManager, LayoutManager2, Serializable
public class GridBagLayout
meluas Obyek

Mengimplementasikan LayoutManager2, Serializable
Kelas GridBagLayout adalah manajer layout yang fleksibel yang sejalan komponen vertikal, horizontal atau di sepanjang dasar mereka tanpa memerlukan bahwa komponen menjadi ukuran yang sama. Setiap objek GridBagLayout mempertahankan grid, dinamis sel persegi, dengan masing-masing komponen menempati satu atau lebih sel, yang disebut area tampilan nya.

Setiap komponen dikelola oleh GridBagLayout dikaitkan dengan sebuah contoh dari GridBagConstraints. Obyek kendala menentukan mana area tampilan komponen yang harus berada di grid dan bagaimana komponen harus diposisikan dalam area tampilan nya. Selain objek kendala, GridBagLayout juga menganggap minimum setiap komponen dan ukuran pilihan untuk menentukan ukuran komponen.

Orientasi keseluruhan grid tergantung pada properti ComponentOrientation wadah itu. Untuk horisontal kiri-ke-kanan orientasi, grid koordinat (0,0) adalah di sudut kiri atas wadah dengan x meningkat ke kanan dan y meningkat ke bawah. Untuk horisontal kanan-ke-kiri orientasi, grid koordinat (0,0) adalah di sudut kanan atas dari wadah dengan x meningkat dengan meningkatnya kiri dan y ke bawah.

Untuk menggunakan tata letak tas kotak efektif, Anda harus menyesuaikan satu atau lebih obyek GridBagConstraints yang berkaitan dengan komponen-komponennya. Anda menyesuaikan objek GridBagConstraints dengan menetapkan satu atau lebih dari variabel instance nya:

GridBagConstraints.gridx, GridBagConstraints.gridy
Menentukan sel yang berisi sudut terkemuka area tampilan komponen, di mana sel pada asal grid memiliki alamat gridx = 0, gridy = 0. Untuk horisontal kiri-ke-kanan tata letak, sudut terkemuka komponen adalah kiri atas nya. Untuk horisontal kanan-ke-kiri tata letak, sudut terkemuka komponen yang tepat atasnya. Gunakan GridBagConstraints.RELATIVE (nilai default) untuk menentukan bahwa komponen ditempatkan tepat berikut (sepanjang sumbu x untuk gridx atau sumbu y untuk gridy) komponen yang ditambahkan ke wadah sebelum komponen ini ditambahkan.
GridBagConstraints.gridwidth, GridBagConstraints.gridheight
Menentukan jumlah sel berturut-turut (untuk gridwidth) atau kolom (untuk gridheight) di daerah layar komponen. Nilai default adalah 1. Gunakan GridBagConstraints.REMAINDER untuk menentukan bahwa area tampilan komponen akan berasal dari gridx ke sel terakhir dalam baris (untuk gridwidth) atau dari gridy ke sel terakhir dalam kolom (untuk gridheight). Gunakan GridBagConstraints.RELATIVE untuk menentukan bahwa area tampilan komponen akan berasal dari gridx ke sebelah sel terakhir dalam baris (untuk gridwidth atau dari gridy ke sebelah sel terakhir dalam kolom nya (untuk gridheight).
GridBagConstraints.fill
Digunakan saat area tampilan komponen ini lebih besar dari ukuran komponen diminta untuk menentukan apakah (dan bagaimana) untuk mengubah ukuran komponen. Nilai yang mungkin adalah GridBagConstraints.NONE (default), GridBagConstraints.HORIZONTAL (membuat komponen cukup lebar untuk mengisi area tampilan yang horizontal, tetapi tidak mengubah tingginya), GridBagConstraints.VERTICAL (membuat komponen yang cukup tinggi untuk mengisi area tampilan yang vertikal, tetapi tidak mengubah lebar), dan GridBagConstraints.BOTH (membuat komponen mengisi area tampilan yang seluruhnya).
GridBagConstraints.ipadx, GridBagConstraints.ipady
Menentukan padding internal komponen ini dalam tata letak, berapa banyak untuk menambah ukuran minimum komponen. Lebar komponen akan setidaknya lebar minimum yang ditambah piksel ipadx. Demikian pula, ketinggian komponen akan setidaknya ketinggian minimum ditambah piksel ipady.
GridBagConstraints.insets
Menentukan bantalan eksternal komponen ini, jumlah minimum ruang antara komponen dan tepi area tampilan nya.



GridBagConstraints.anchor
Menentukan di mana komponen harus diposisikan di area tampilan nya. Ada tiga macam nilai yang mungkin: absolut, orientasi-relatif, dan nilai-nilai dasar-Orientasi relatif relatif diinterpretasikan relatif terhadap properti ComponentOrientation wadah sementara nilai absolut tidak. Baseline nilai relatif dihitung relatif terhadap baseline. Nilai yang benar adalah:
Digunakan untuk menentukan bagaimana mendistribusikan ruang, yang penting untuk menentukan perilaku mengubah ukuran. Kecuali Anda tentukan berat untuk setidaknya satu komponen berturut-turut (weightx) dan kolom (berat), semua komponen bersama-sama rumpun di tengah wadah mereka. Hal ini karena ketika berat badan adalah nol (default), obyek GridBagLayout menempatkan setiap ruang ekstra antara grid selnya dan tepi wadah.
Setiap baris mungkin memiliki data dasar, baseline ditentukan oleh komponen dalam baris yang yang memiliki dasar yang valid dan selaras di sepanjang baseline (nilai jangkar komponen adalah salah satu BASELINE, BASELINE_LEADING atau BASELINE_TRAILING). Jika tidak ada komponen berturut-turut memiliki dasar yang sah, baris tidak memiliki data dasar.
Jika komponen meliputi baris itu selaras baik dengan dasar dari baris awal (jika perilaku dasar-resize CONSTANT_ASCENT) atau baris akhir (jika perilaku dasar-resize CONSTANT_DESCENT). Baris bahwa komponen sejalan dengan disebut baris yang berlaku.

Gambar berikut menunjukkan tata letak dasar dan termasuk komponen yang mencakup baris:


Tata letak ini terdiri dari tiga komponen:
Sebuah panel yang dimulai pada baris 0 dan berakhir di baris 1. Panel ini memiliki perilaku dasar-resize dari CONSTANT_DESCENT dan memiliki jangkar BASELINE. Sebagai perilaku dasar-resize CONSTANT_DESCENT baris berlaku untuk panel adalah baris 1.
Dua tombol, masing-masing dengan perilaku dasar-resize dari CENTER_OFFSET dan jangkar BASELINE.
Karena tombol kedua dan panel berbagi baris yang sama berlaku, mereka berdua selaras di sepanjang dasar mereka.
Komponen diposisikan menggunakan salah satu dasar-nilai relatif ukuran berbeda daripada ketika diposisikan menggunakan nilai absolut atau orientasi-relatif. Bagaimana komponen perubahan ditentukan oleh bagaimana dasar dari perubahan baris yang berlaku. Baseline adalah berlabuh ke bagian bawah area layar jika ada komponen dengan baris berlaku sama memiliki perilaku dasar-resize dari CONSTANT_DESCENT, jika baseline adalah berlabuh ke bagian atas area layar. Aturan berikut mendikte perilaku resize:
Komponen resizable diposisikan diatas garis dasar hanya bisa tumbuh setinggi baseline. Misalnya, jika baseline berada pada 100 dan berlabuh di atas, komponen resizable diposisikan di atas dasar tidak pernah bisa tumbuh lebih dari 100 unit.
Demikian pula, komponen resizable diposisikan di bawah baseline hanya dapat tumbuh setinggi perbedaan antara tinggi layar dan baseline.
Komponen resizable diposisikan pada baseline dengan perilaku dasar-resize of LAIN hanya diubah ukurannya jika baseline pada ukuran ukurannya pas dengan area tampilan. Jika baseline adalah sedemikian rupa sehingga tidak sesuai dalam bidang tampilan komponen tersebut tidak diubah ukurannya.
Komponen diposisikan pada dasar yang tidak memiliki perilaku dasar-resize of LAIN hanya bisa tumbuh setinggi tinggi layar - dasar + dasar komponen.
Jika Anda posisi komponen di sepanjang baseline, tetapi komponen tersebut tidak memiliki dasar yang sah, maka akan vertikal terpusat dalam ruang tersebut. Demikian pula jika Anda telah memposisikan komponen relatif terhadap baseline dan tidak ada komponen dalam baris memiliki dasar yang sah komponen secara vertikal terpusat.
Gambar berikut ini menunjukkan sepuluh komponen (semua tombol) dikelola oleh tata letak tas grid. Gambar 2 menunjukkan tata letak untuk kontainer, horisontal kiri-ke-kanan dan Gambar 3 menunjukkan tata letak untuk kontainer, horisontal kanan-ke-kiri.

   

Masing-masing dari sepuluh komponen memiliki bidang mengisi GridBagConstraints yang terkait mengajukan keberatan diatur ke GridBagConstraints.BOTH. Selain itu, komponen memiliki non-default kendala berikut:

Button1, tombol2, Tombol3: weightx = 1.0
Button4: weightx = 1.0, gridwidth = GridBagConstraints.REMAINDER
Button5: gridwidth = GridBagConstraints.REMAINDER
Button6: gridwidth = GridBagConstraints.RELATIVE
Button7: gridwidth = GridBagConstraints.REMAINDER
Button8: gridheight = 2, berat = 1,0
Button9, Tombol 10: gridwidth = GridBagConstraints.REMAINDER
Berikut adalah kode yang mengimplementasikan contoh di atas:

import java.awt.*;
import java.util.*;
import java.applet.Applet;
 
public class GridBagEx1 extends Applet {
 
     protected void makebutton(String name,
                               GridBagLayout gridbag,
                               GridBagConstraints c) {
         Button button = new Button(name);
         gridbag.setConstraints(button, c);
         add(button);
     }
 
     public void init() {
         GridBagLayout gridbag = new GridBagLayout();
         GridBagConstraints c = new GridBagConstraints();
 
         setFont(new Font("SansSerif", Font.PLAIN, 14));
         setLayout(gridbag);
 
         c.fill = GridBagConstraints.BOTH;
         c.weightx = 1.0;
         makebutton("Button1", gridbag, c);
         makebutton("Button2", gridbag, c);
         makebutton("Button3", gridbag, c);
 
         c.gridwidth = GridBagConstraints.REMAINDER; //end row
         makebutton("Button4", gridbag, c);
 
         c.weightx = 0.0;                //reset to the default
         makebutton("Button5", gridbag, c); //another row
 
         c.gridwidth = GridBagConstraints.RELATIVE; //next-to-last in row
         makebutton("Button6", gridbag, c);
 
         c.gridwidth = GridBagConstraints.REMAINDER; //end row
         makebutton("Button7", gridbag, c);
 
         c.gridwidth = 1;                //reset to the default
         c.gridheight = 2;
         c.weighty = 1.0;
         makebutton("Button8", gridbag, c);
 
         c.weighty = 0.0;                //reset to the default
         c.gridwidth = GridBagConstraints.REMAINDER; //end row
         c.gridheight = 1;               //reset to the default
         makebutton("Button9", gridbag, c);
         makebutton("Button10", gridbag, c);
 
         setSize(300, 100);
     }
 
     public static void main(String args[]) {
         Frame f = new Frame("GridBag Layout Example");
         GridBagEx1 ex1 = new GridBagEx1();
 
         ex1.init();
 
         f.add("Center", ex1);
         f.pack();
         f.setSize(f.getPreferredSize());
         f.show();
     }
 }



Referensi:

Comments

Popular posts from this blog

SEJARAH SINGKAT BAHASA C dan C++

Apa itu Bahasa C++? Apa itu Bahasa C++? Bahasa C++ adalah pengembangan dari bahasa C, salah satu bahasa pemprograman. Bahasa C++ pertama kali dikembangkan oleh Bjarne Stroustrup dari AT&T Bell Laboratories di tahun 1980-an. Lalu pada tahun 1983 hingga 1984 bahasa C++ dikembangkan lagi dengan menambahkan beberapa fitur yaitu virtual functions, function overloading, referensi dengan simbol &, konstan keyword, dan satu baris komentar dengan 2 tanda forward slashes (//). Sejarah Singkat Bahasa C Pencipta bahasa C adalah Brian W. Kernighan dan Denis M. Ritchi, sekitar tahun 1972. Penulisan pemrograman pada bahasa C dilakukan dalam membagi blok-blok, sehingga bahasa C disebut bahasa terstruktur. Bahasa C dapat digunakan di berbagai mesin dengan mudah, mulai dari PC sampai dengan mainframe, dengan berbagai sistem operasi (DOS, UNIX, VMS, dll). Bahasa pemrograman C merupakan bahasa pemrograman yang dapat dikatakan berada diantara bahasa beraras rendah dan beraras tinggi. Bahasa...

Fitur dan spesifikasi

Ubuntu TV . Semua siaran televisi Terestrial siaran dalam format AS dan Uni Eropa standar, untuk konten definisi standar atau tinggi, dengan terintegrasi panduan program elektronik. Kabel dan satelit kemungkinan Mengintegrasikan kabel atau layanan satelit ke Ubuntu TV, untuk memberikan pengalaman pelanggan yang terpadu. Ubuntu menjembatani kesenjangan antara produsen televisi dan kabel atau penyedia satelit. Tak berujung hiburan online Ubuntu TV mengintegrasikan penyedia konten online untuk menawarkan katalog beragam film, acara TV dan musik langsung dari Internet. Manfaatkan layanan kerangka Canonical dan mitra konten, atau mengintegrasikan layanan Anda sendiri   Peningkatan Melihat Kedua layar pengalaman merupakan tren yang muncul dalam siaran televisi . Tautan ponsel atau tablet ke Ubuntu TV , menyajikan konten yang terkait untuk pemirsa sementara mereka menonton. Memberikan informasi tentang film oleh sutradara yang sama , misalnya, a...

Install Aplikasi di Ubuntu

Masuk ke  Ubuntu Software Center   (Aplications>Ubuntu software Center) Klik salah satu kategorinya, misal Internet Klik salah satu pilihan, misal  Chat Klik salah satu aplikasi, misal  Google Talk (aplikasi chat untuk Akun Google) Akan muncul button  More Info  dan  Install . More Info untuk mengetahui informasi mengenai aplikasi dan Install untuk install aplikasi. Klik  Install  dan proses instalasi akan muncul kotak dialog untuk memasukkan  password root . Maka proses instalasi akan berjalan Jika sudah selesai,