Membuat Gambar Pada Jpanel
Walaupun aku seorang newbie semoga aja dengan posting ini
dapat berguna bagi diriku sendiri sebagai wahana belajar, dan berguna
bagi orang banyak…! Amin…! Nah, gak ada salahnya bila aku mengucapkan
terima kasih terlebih dahulu kepada sang Maestro JAVA dari Jawa Barat,
Echo Kurniawan Kenedy yang telah berkenan sharing pengetahuan tentang
JAVA.
baik kita langsung saja
adapun tampilannya kira" seperti ini
Selanjutnya, Kali ini mo nulis tentang manipulasi JPanel. Karena lumayan panjang tentang banyaknya bagian-bagian panel yang dapat dimanipulasi, maka kali ini aku akan ngebahas tentang manipulasi JPanel. Pada bagian pertama ini akan aku bahas bagaimana membuat background gambar pada JPanel. Sebelum kita bahas… berikut ini adalah sourcecode yang dapat kita gunakan untuk membuat JPanel terlihat mempunyai background
Read more
baik kita langsung saja
adapun tampilannya kira" seperti ini
Selanjutnya, Kali ini mo nulis tentang manipulasi JPanel. Karena lumayan panjang tentang banyaknya bagian-bagian panel yang dapat dimanipulasi, maka kali ini aku akan ngebahas tentang manipulasi JPanel. Pada bagian pertama ini akan aku bahas bagaimana membuat background gambar pada JPanel. Sebelum kita bahas… berikut ini adalah sourcecode yang dapat kita gunakan untuk membuat JPanel terlihat mempunyai background
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
35
36
37
38
39
| /* * Sourcecode berikut terbuka untuk umum * Semua orang diperkenankan memanfaatkan kode ini * Tanpa dipungut biaya apapun alias gratis * Akan tetapi segala resiko tanggung sendiri * Happy coding... */ package Komponen; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Image; import javax.swing.ImageIcon; import javax.swing.JPanel; /** * * @author farazinux */ public class PanelGambar extends JPanel { private Image image; public PanelGambar() { image = new ImageIcon(getClass().getResource( "/Gambar/image1.jpg" )).getImage(); } @Override protected void paintComponent(Graphics g) { super .paintComponent(g); Graphics2D gd = (Graphics2D) g.create(); gd.drawImage(image, 0 , 0 , getWidth(), getHeight(), null ); gd.dispose(); } } |
Nah, bagi yang udah jelas atau yang udah paham, gak ada baiknya juga
baca kelanjutan tulisan saya, siapa tahu juga bermanfaat (kalau nggak
bagi ente mungkin bagi saya)
Sourcecode di atas yang sangat simple merupakan class yang berguna untuk
memanipulasi JPanel. Langkah untuk membuatnya adalah dengan membuat
Class baru kemudian di extend kan pada JPanel. Artinya Class ini akan
mengakomodir tentang JPael.
1
2
3
| public PanelGambar() { image = new ImageIcon(getClass().getResource( "/Gambar/image1.jpg" )).getImage(); } |
Pada kode di atas, artinya background JPanel berupa image. pemanggilan
Image ada di paket Gambar dengan nama gambar image1.jpg. Jika anda
menempatkan pada lokasi yang berbeda maka tentukan lokasi yang sesuai
dengan kriteria. Nah, selanjutnya kita lanjutkan pada penggambaran pada JPanel. Perhatikan potongan kode berikut :
1
2
3
4
5
6
7
8
9
10
| @Override protected void paintComponent(Graphics g) { super .paintComponent(g); Graphics2D gd = (Graphics2D) g.create(); gd.drawImage(image, 0 , 0 , getWidth(), getHeight(), null ); gd.dispose(); } |
Pada potongan baris code di atas, menunjukkan bahwa penggambaran
(paintComponent) dilakukan dengan dioveride. Penggambaran dengan
memanfaatkan Graphic2D, dan jangan lupa gd harus didispose (ditutup)
pada akhir overide. pada potongan program :
1
| gd.drawImage(image, 0 , 0 , getWidth(), getHeight(), null ); |
Image berada pada posisi awal 0, 0, ini menunjukkan bahwa gambar akan
dipasang mulai titik koordinat 0 atas dan 0 samping pada JPanel, gambar
akan disesuaikan (mengikuti) JPanel, ini ditentukan dengna getWidth(),
getHeight().
Nah, setelah Class ini paham dan terbentuk dengan OKE, maka tinggal buat
JFrame baru kemudian pasanglah pada JFrame yang kita buat tadi. Maka
JFrame akan dipasang JPanel yang memiliki Background berupa gambar. Selamat mencoba happy coding with Java, and see you next time….!
Semoga Sukseess
Read more