Upload
devi-apriansyah
View
130
Download
11
Embed Size (px)
Citation preview
LAPORAN PRAKTIKUMBAHASA PEMROGRAMAN 2
MODUL IPEMROGRAMAN SWING
DISUSUN OLEHNAMA : DEVINIM : 2012081043KELAS : TI2012A
LABORATORIUM KOMPUTERFAKULTAS ILMU KOMPUTER
UNIVERSITAS KUNINGAN2014
I. DASAR TEORI
Selain package java.awt, java juga memiliki package javax.swing untuk
membuat komponen GUI. Swing lebih portable daripada AWT karena
beberapa komponennya bersifat multiplatform sehingga disebut juga
komponen lightweight.
Komponen Swing
Komponen-komponen Swing dapat dibagi menjadi beberapa kategori,
yaitu:
1. Root Container
Nama Container Deskripsi
JWindowMerupakan top level container tanpa border, title bar, atau fungsi manajemen window lainnya.
JFrame
Merupakan top level container dan dilengkapi dengan border, title bar, atau fungsi manajemen window lainnya. Digunakan sebagai window aplikasi.
JDialog
Merupakan top level container dan dilengkapi dengan border, title bar, atau fungsi manajemen window lainnya. Digunakan sebagai window sementara untuk mengambil input dari user.
JAppletContainer yang disisipkan (embedded) ke dalam aplikasi lainnya.Digunakan pada web browser.
JInternalFrame Container lightweight yang mengemulasikan fitur dari native frame.
2. Label dan Button
Komponen Swing
Padannya dengan komponen AWT
Deskripsi Komponen Swing
JLabel Label Teks singkat yang diletakan pada komponen
AbstractButton tidak adaMerupakan kelas abstract dari semua komponen Button
JButton Button Merupakan push button
JToggleButton tudak adaMengimplementasikan Button dengan dua kondisi/state
JCheckBox Checkbox tanpa CheckboxGroup
Mengimplementasikan item CheckBox
JRadioButton Checkbox dengan CheckboxGroup
Mengimplementasikan item RadioButton
JMenuItem MenuItem Mengimplementasikan Item dalam menu item
JMenu Menu Mengimplementasik suatu menu
JCheckBoxMenuItem
CheckBoxMenuItem
Mengimplementasikan CheckBox di dalam menu
JRadioButtonMenuItem tidak ada
Mengimplementasikan RadioButton di dalam menu
3. Komponen Lightweight
Komponen Swing Lightweight
Padannya dengan komponen AWT
Deskripsi Komponen Swing
JPanel Panel General Purpose container
JMenuBar MenuBar
Digunakan untuk membuat bar menu yang mengandung komponen JMenu
JToolBar tidak ada
Container untuk menempatkan menu/fungsi-fungsi yang akan digunakan
JScrollBar Scrollbar Scrollbar
JSlider Scrollbar Komponen yang dapat digeser-geser posisinya.
JProgressBar tidak adaKompone yang dapat mengindikasikan kemajuan suatu proses
JList List List dari item-itemJComboBox Choice
JSeparator tidak ada
Komponen yang menyediakan garis pemisah diantara komponen
4. Komponen Text
Komponen Swing Text
Padannya dengan komponen AWT
Deskripsi Komponen Swing
JTextComponent TextComponentMerupakan kelas abstract untuk semua kompinen text
JTextField TextField
Komponen untuyk menampungtext singkat (satu baris) yang dapat diedit.
JPasswordField TextField dengan set karakter echo
Komponen sebagai input password
JTextArea TextArea
Kompone yang dapat menampung text berjumlah lebih dari satu baris dan dapat diedit.
JEditorPane tidak adaKomponen untuk mengedit barbagai jenis text.
JTextPane tidak adaKomponen untuk mengedit berbagai jenis text dengan banyak style.
5. Komponen Space-saving
Komponen Swing Space-saving
Padannya dengan komponen AWT
Deskripsi Komponen Swing
JScrollPane ScrollPaneDigunakan untuk men-scroll komponen yang besar.
JTabbedPane tidak adaDigunakan untuk membuat pilihan multiple page dengan tombol tab.
JSplitPane tidak adaUntuk meng-adjust pembagi di antara dua komponen.
6. Komponen dengan Model Kompleks
Komponen Swing Model Kompleks
Padannya dengan komponen AWT
Deskripsi Komponen Swing
JTable tidak ada Merepresentasikan data dalam tabel dua dimensi.
JTree tidak adaMerepresentasikan set data, seperti pada windows explorer
7. Komponen yang tersusun dari komponen lain
Komponen Swing Padannya dengan komponen AWT
Deskripsi Komponen Swing
JFileChooser FileDialogMengijinkan user untuk memilih satu atau lebih file atau direktori.
JColorChooser tidak adaMengijinkan user untuk memilih suatu warna dari template warna.
JOptionPane tidak ada Menampilkan suatu list pilihan.
II. PRAKTIKUM DAN PEMBAHSAN
1. Praktek JLabel : Untuk menampilkan teks yang pendek dengan icon
Kode Program:
Pembahasan:
Program, diatas adalah program unruk menampilkan text yang
pendek dengan icon. Program diatas dibuat dengan GUI menggunakan
package javax.swing.
Container JFrame merupakan top level container dan dilengkapi dengan
border, title bar, atau fungsi manajemen window lainnya. Digunakan
sebagai window aplikasi.
Baris ke empat merupakan menginstansiasikan objek bernama ap1 dari
kelas contohJLabel.
Baris ke enam adalah constructor, super adalah untuk member nama
pada header frame dengan nama Tes JLabel dengan ukuran panjang dan
lebar masing-masing 300 dan 100.
Icon adalah gambar berukuran kecil yang digunakan untuk melapisi
Label, sehingga tampak lebih menarik dibandingkan dengan label
standar. Untuk menambahkan icon terlebih dahulu harus menciptakan
objek icon yang diinstans dari kelas ImageIcon. Pada baris ke enam
dibuat objek dengan nama iconCangkir.
Pada baris 10 sampai 11 adalah proses dibuat objek dari kelas JLabel
dengan label pesanan Devi dan Kopi, dan ikonCangkir diletakan
disebelah kiri dari label kopi. Pada baris ke 12 dibuat objek dengan
nama panelLabel.
Baris 13 dan 14 adalah pemanggilan objek panelLabel yang
ditambahkan objek labelpesanan dan labelkopi.
Lalu panelLabel tersebut diletakan disebelah selatan dari frame.
Method show digunakan untuk menampilkan dari kelas contohJLabel.
Output:
Gambar diatas adalah output dari kode program, dimana pada label Kopi
terdapat icon atau gambar kecil sehingga tampak lebih menarik.
2. Praktek JButton
Kode Program:
Pembahasan:
Kode program diatas adalah mendemonstrasikan komponen
JButton dari container JFrame yang diimport dari package javax.swing dan
java.awt.event. Package java.awt.event adalah berisi kelas dan interface
untuk menghandle event pada GUI.
Pada kode program diatas terdapat 2 button yaitu button perbesar
dan button selesai, pada button selesai terdapat icon kopi untuk melapisi
button agar terlihat lebih menarik. Pada baris 22 terdapat interface
ActionListener dengan method addActionListener() yang digunakan pada
JButton untuk mendeteksi aksi apa yang akan dilakukan oleh user terhadap
button “Perbesar” begitu juga pada button “Selesai”. Pada baris
selanjutnya yaitu baris 25 terdapat kelas PenanganKejadian yang
diturunkan dari interface WindowAdapter dengan method
windowClosing(Window Event e) untuk mendeteksi event close.
Pada baris 28 terdapat class PenanganTombol yang
diimplementasikan dari interface ActionListener. Method dari Interface
ActionListener adalah actionPerformed(Action Event e), jika user
mengklik button “Perbesar” maka Frame akan bertambah besar dengan
lebar+=20 dari keadaan semula yang telah diinisialisai di variabel awal dan
tinggi+=10, dan jika mengklik tombol “Selesai” maka frame akan closing.
Output:
Gambar diatas adalah outputnya, jika kita perbesar dengan mengklik 1 kali
maka akan terlihat pada gambar yang di bawah.
3. Praktek Pembuatan paket dengan nama latjava.uniku
Kode Program:
Pembahasan:
Pada kode program diatas dengan nama class KotakPesan terdapat
package latjava.uniku;, package adalah cara pengelompokan dan
pengorganisasian kelas-kelas ke dalam satu library, package tersebut akan
sangat bermanfaat pada saat membuat program yang besar dan kompleks
yang membutuhkan banyak kelas dari library yang berbeda. Kode program
tersebut menggunakan container JDialog, container tersebut sama dengan
JFrame namun JDialog digunakan sebagai window sementara untuk
mengambil input dari user. Terdapat method void show() yang akan
membuat layout dan semua subkomponennya yang termuat didalamnya
menjadi visible pada layar monitor dan sekaligus membawa ke urutan
paling muka dari semua aplikasi window yang sedang dijalankan. JDialog
dari kelas KotakPesan tersebut diberi nama “Informasi” pada toolbar dari
kotak dialog tersebut. Terdapat satu button yaitu “Ok” dan method pack()
yang digunakan untuk mengemas layout managemen agar sesuai dengan
ukuran subkomponen yang termuat didalamnya.
Kelas PenanganKejadian dan PenanganTombol yang diimport dari
java.awt.event yang digunakan untuk menghandle event pada GUI. Pada
kelas PenanganTombol jika kita mengklik button “Ok” maka akan
menjal;ankan method dispose() yang digunakan untuk “membebaskan”
resource window, setelah anda selesai menggunakan komponen-
komponennya. Method ini tidak berarti menghapus objek window tersebut,
hanya bersifat menutup, dan kemungkinan objek tersebut diakse kembali
setelah operasi selesai dilakukan.
Output:
Jika kita mengcompile maka hasilnya seperti diatas karena tidak ada
method main untuk menjalankan program tersebut.
4. Praktek Pemanggilan Paket dengan nama latjava.uniku dengan JButton.
Kode Program:
Pembahasan:
Kode program diatas dengan nama ContohJDialog akan
menggunakan/mengakses method dan variabel pada class KotakPesan
yang berada pada package latjava.uniku; yang telah dibuat sebelumnya.
Karena kelas ContohJDialog ini berbeda direktori dengan class
KotakPesan maka kita harus mencantukan deklarasi import
latjava.uniku.KotakPesan agar dapat mengakses class KotakPesan
tersebut.
Class ContohJDialog diturunkan dari container JFrame, dalam
frame tersebut terdapat komponen button yaitu Dialog dan Selesai. Jika
user mengklik tombol “Dialog” maka dia akan mengakses objek kp dari
class KotakPesan yang telah diimport, dan akan menampilkan pesan
“Anda mengklik tombol Dialog” dan button “Ok”. Button “Ok” jika di
klik maka akan menutup dialog tersebut dan kembali ke frame utama,
tidak berarti menghapus objek window tersebut karena kemungkinan objek
tersebut diakses kembali. Jika user mengklik button “Selesai” maka frame
tersebut akan ditutup.
Output:
Tampilan dari kode program ContohJDialog adalah seperti gambar diatas,
dimana jika mengklik button tombol maka akan menampilkan Informasi (dialog).
III. KESIMPULAN
Dari dari pembahasan praktikum diatas dapat disimpulkan bahwa Swing
adalah package untuk tampilan GUI, swing berada pada package javax.swing
yang bersifat lightweight, yaitu dapat diaplikasikan untuk semua platform.
Berbeda dengan awt yang tidak multiplatform, Swing dikatakan multiplatform
karena pada package tersebut sudah lengkap sehingga dapat menyesuaikan
dengan platform apapun.
Komponen-komponen Swing dapat dibagi menjadi beberapa kategori,
yaitu:
1. Root Container
2. Label dan Button
3. Komponen Lightweight
4. Komponen Text
5. Komponen Space-saving
6. Komponen dengan Model; Kompleks
7. Komponen yang tersusun dari komponen lain
IV. DAFTAR PUSTAKA
Menguasai JAVA 2 & Object Oriented Programming/Benny Hermawan; -
Ed.1.-Yogyakarta:Andi,09-08-07.
·