The Importance of Sharing


Saya dulu pernah membuat image atau gambar supaya mau tampil dalam form, namun itu menggunakan JLabel yang parameter classnya diisi dengan Class ImageIcon. Dimana caranya seperti dibawah ini.

private ImageIcon gambar = new ImageIcon(“blabla.jpg”);

private JLabel label = new JLabel (gambar);

Namun yang jadi masalah adalah JLabel merupakan komponen swing yang tidak bisa diisi komponen swing lain diatasnya, sehingga jika kita ingin membuat sebuah form yang ada gambar backgroundnya  maka kita tidak bisa menggunakan JLabel. Nah, dari permasalahan tersebut saya mendapat ide untuk membuat background menggunakan JPanel, karena JPanel masih bisa diisi komponen swing diatasnya.

    1. Seperti biasa editor yang saya gunakan adalah netbeans 6.9. Silahkan anda membuat sebuah project baru. Tambahkan folder dengan nama bebas, caranya yaitu dengan meng-klik kanan Source Packages lalu pilih Other kemudian klik Folder. folder Maka akan muncul sebuah dialog, dan isi nama folder tersebut sesuai dengan keinginan anda. Dalam hal ini saya menggunakan resources sebagai nama folder saya.
    2. Copylah sebuah gambar ke dalam folder yang telah anda buat tadi, kalau saya akan mengcopy sebuah gambar ke dalam folder resources. Sehingga pada Path Project anda akan menjadi seperti ini.
      path Kemudian buatlah sebuah class yang mengextends JPanel, caranya dengan mengkilk kanan folder Source Packages carilah JPanel Form, kalau tidak ada, cari pada Other —> Swing GUI Form —> JPanel Form.JPanel Buatlah nama class sesuai dengan keinginan anda. Saya memberinya dengan nama PanelGambar dan meletakkannya didalam package arya.wiratama.Class Panel
    3. Kemudian pindahkan tab pada class PanelGambar dari design ke code. Lalu buatlah sebuah variable bertipe Image, dan deklarasikan dengan access modifier yaitu “private”.
      variable image
      Disini kita akan menemukan sebuah error yang ditandai dengan lampu berwarna merah, dan anda bisa lihat pada gambar tersebut saya lingkari dengan warna merah. Mengapa bisa terjadi error ? karena kita belum mengimport package untuk tipe image tersebut. Klik pada tanda yang saya beri lingkaran tersebut maka akan muncul beberapa suggestion dari netbeans.
      import image
      Pilihlah “Add import for java.awt.Image;” maka secara otomatis netbeans akan mengimport package tersebut. Dan secara otomatis tanda lampu tersebut akan hilang.
    4. Lalu kita ambil gambar pada folder resources menggunakan Class Toolkit. Caranya seperti dibawah ini
      Toolkit
      Class Toolkit merupakan class yang berhubungan dengan user interface atau hal – hal yang berhubungan dengan pengolahan gambar (Sumber : Sun Microsystem)
    5. Lalu kita buat sebuah object dari class Media Tracker untuk melacak status gambar yang telah kita tambahkan menggunakan class Toolkit tadi. Caranya adalah sebagai berikut.

      Class MediaTracker ini berguna untuk memastikan supaya gambar yang akan ditampilkan benar – benar akan dimuat kedalam JPanel. Hal ini disebabkan, class Toolkit menggunakan Thread yang terpisah untuk memuat gambar, dan kita tidak tahu pasti kapan gambar akan selesai dimuat. Sehingga dengan menggunakan class MediaTracker kita membuat program kita supaya mau menunggu gambar benar – benar selesai dimuat.
    6. Nah, setelah class MediaTracker kita tambahkan, selanjutnya kita add gambar yang telah disimpan kedalam variabel background yang bertipe image.

      Pada method addImage tersebut saya memberi id 0, id ini sebagai penanda gambar mana yang harus dipastikan untuk dimuat kedalam JPanel. Setelah diberi id kita langsung tambahkan sebuah method “waitForID” dengan parameter yang sesuai dengan id yang telah diberikan pada method sebelumnya, untuk memastikan gambar benar – benar dimuat hingga selesai.

      Namun jika dilihat dengan seksama netbeans memberi peringatan bahwa method tersebut ada errornya. Nah cara mengatasinya adalah dengan mengkilik lampu tersebut dan pilih “Surround statement with try-catch”.
    7. Setelah itu, selanjutnya kita Override method paintComponent dibawah konstruktor, cukup dengan mengetikan PaintComponent lalu tekan enter maka netbans akan melakukan auto correct seperti gambar dibawah ini.

      Lalu tambahkan method drawImage untuk menggambar kedalam JPanel seperti gambar dibawah ini.

      Jika sudah buatlah sebuah JFrame dengan cara yang sama seperti membuat JPanel, dan letakkan jadi satu folder dengan class JPanel yang sudah kita buat.
    8. Lalu Drag class Panel Gambar kedalam Jframe yang telah dibuat, dimana saya memberi nama Class FrameUtama.

      Compile dan jalankan program tersebut, maka anda dapat melihat hasilnya seperti gambar dibawah ini.

Nah untuk selanjutnya anda dapat menimpa JFrame tersebut dengan komponen swing lainnya seperti gambar dibawah ini.

Selamat Mencoba😀
Dan untuk filenya bisa didownload DISINI

Comments on: "Menampilkan Gambar dalam JPanel" (9)

  1. makasih gan sangat berguna !

  2. sip gan,keliling2 nyari totorial.Akhirnya berhasil juga di sini

  3. gan nomor 8 maksudnya gimana tu gan. ga ngerti

  4. Eka Saputra said:

    gan link downloadnya mati,,,,, mohon di reupload

  5. kak file downlodnya mati,mohon di reupload…..:D

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: