Membuat Bentuk Yang Tidak Biasa Dengan Generalpath Pada Komponen Java Swing

Dalam postingan lalu, kita sudah membahas ihwal bagaimana menciptakan komponen java swing menjadi transparan. nah kali ini kita akan membahas menciptakan bentuk yang tidak biasa (biasanya kita menciptakan kotak atau bulat) juga tidak memakai gambar. contohnya menciptakan setengah lingkaran atau bentuk yang lainnya.

Seperti telah dibahas pada postingan-potingan sebelumnya, untuk menciptakan bentuk komponen swing yang sesuai dengan keinginan, kita dapat meng-override method pain atau paint componen.

untuk menciptakan bentuk komponen menjadi menarik, kita dapat memadukan bentuk-bentuk sederhana ibarat longkaran, kotak line dan lain sebagainya. nah yang jarang sekali digunkanan yakni GeneralPath. GeneralPath yakni class yang dapat dipakai untuk menciptakan bentuk yang tidak "biasa".

Bingung? hehe ya udah kini kita coba saja memakai pola kasus. coba buat sebuah project dan tambahkan isyarat berikut:
super.paintComponent(g);          GradientPaint paint = new GradientPaint(0, 0, new Color(255, 255, 255, 100), getWidth(), getHeight(), new Color(255, 255, 255, 0));         GeneralPath path = new GeneralPath();         path.moveTo(0, 0);         path.lineTo(0, getHeight());         path.curveTo(0, getHeight(), getWidth() / 5, getHeight() / 5, getWidth(), 0);         path.closePath();          Graphics2D g2 = (Graphics2D) g.create();         g2.setPaint(paint);         g2.fill(path);         g2.dispose(); 
Jangan lupa simpan isyarat tersebut di method paintComponent mikil swing komponen java. berikut pola implementasinya:
package gradienpanel;  import java.awt.Color; import java.awt.GradientPaint; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.geom.GeneralPath; import javax.swing.JPanel;  /**  *  * @author Taopik Ridwan  */ public class UniqGradienPanel extends JPanel {      public UniqGradienPanel() {         super();         setOpaque(false);     }      @Override     protected void paintComponent(Graphics g) {         super.paintComponent(g);          GradientPaint paint = new GradientPaint(0, 0, new Color(255, 255, 255, 100), getWidth(), getHeight(), new Color(255, 255, 255, 0));         GeneralPath path = new GeneralPath();         path.moveTo(0, 0);         path.lineTo(0, getHeight());         path.curveTo(0, getHeight(), getWidth() / 5, getHeight() / 5, getWidth(), 0);         path.closePath();          Graphics2D g2 = (Graphics2D) g.create();         g2.setPaint(paint);         g2.fill(path);         g2.dispose();     } } 
Coba tabahkan komponen yang barusan dibentuk ke JFrame atau ke JPanel. Berikut kurang lebih Hasilnya:


Nah silahkan ekplorasi class GeneralPath untuk menciptakan bentuk-bentuk menarik lainnya.
 
Terima kasih sudah meluangkan waktu untuk mengunjungi blog ini.

Belum ada Komentar untuk "Membuat Bentuk Yang Tidak Biasa Dengan Generalpath Pada Komponen Java Swing"

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel