download

Matakuliah : M0864/Programming I
Tahun
: 2009
Java GUI Container
Pertemuan 2
Learning Outcomes
Pada akhir pertemuan ini, diharapkan mahasiswa akan
mampu:
– menguraikan kembali komponenkomponen objek GUI di Java (C2)
Bina Nusantara
Outline Materi
• Introduction Java GUI API
• Swing vs AWT
• Container Classes
Bina Nusantara
Introduction Java GUI API
• GUI (Graphical User Interface) : metode interaksi secara grafis
antara user dengan komputer.
• API (Application Programming Interface) : suatu kumpulan fungsifungsi, prosedur-prosedur, kelas-kelas dalam sebuah operating
system, library yang dapat mendukung apa yang diminta oleh
program.
Bina Nusantara
Introduction Java GUI API
• Kelas-kelas GUI diklasifikasikan menjadi 3 group :
1. Container Classes
 JFrame, JPanel, dan JApplet
2. Component Classes
 JButton, JTextField, JTextArea, JComboBox, JList, JRadioButton
dan JMenu , adalah subclasses dari JComponent.
3. Helper Classes
 Graphics, Color, Font, FontMetrics dan Dimension.
Bina Nusantara
Swing vs AWT
• AWT (Abstract Windows Toolkit)
–
–
–
–
–
Baik untuk pengembangan simple graphical user interface
Kurang cocok untuk pengembangan GUI Projector.
Rawan untuk bugs.
Heavyweight components
Contoh kelas :
• Button, Label, List Component, Canvas, dll dari java.awt
• Swing
–
–
–
–
–
–
Bina Nusantara
More Robust
More Versatile
Flexible library
Komponennya tergantung pada platform.
Lightweight components
Contoh kelas :
• JButton, JLabel, JList, JComponent, dll dari javax.swing
• Umumnya semua kelas menggunakan “J” di depan nama kelasnya
Swing vs AWT
Dimensions
LayoutManager
1
Classes in the java.AWT
Font
Heavyweight
Object
FontMetrics
Color
Panel
Applet
JApplet
Window
Frame
JFrame
Dialog
JDialog
Graphics
Component
Container
*
JComponent
Swing Component in the javax.swing
Bina Nusantara
Container Classes
•
Kelas-kelas Container merupakan komponen GUI yang digunakan untuk
mengandung komponen GUI lainnya.
•
Kelas AWT Container :
–
–
–
–
–
•
Window,
Frame,
Dialog,
Applet, dan
Panel
Kelas Swing Container :
–
–
–
–
–
Bina Nusantara
Container,
JFrame,
JDialog,
JApplet, dan
JPanel,
Container Classes
• Frame di Java menggunakan JFrame
• Tingkatan paling atas dari kontainer untuk menghandle
komponen GUI.
• Method :
–
–
–
–
setSize(lebar,tinggi)  mengatur ukuran frame
setLocation(x,y)  mengatur lokasi letak frame
setVisible(boolean)  mengatur untuk ditampikan atau tidak
setDefaultCloseOperation(int)  Spesifikasi operasi jika frame
ditutup.
– setLocationRelativeTo(component) Set lokasi frame ke
komponen yang spesifik. Jika komponennya null maka frame
akan tepat di tengah layar
– pack() secara otomatis set ukuran frame dengan komponenBina Nusantara
komponen yang ada di dalam frame.
Container Classes
• Contoh Kode :
• Output :
Bina Nusantara
Container Classes
• Windows Closing Event
– Secara default, ketika user menutup frame dilayar. Sebenarnya
frame itu disembunyikan dibalik layar jadi masih dapat
ditampilkan kembali ke layar
– Fungsi atau behavior yang akan menjalankan operasi tutup
window pada frame : setDefaultCloseOperation(…)
– Pada fungsi tersebut harus diisi salah satu dari nilai berikut :
• DO_NOTHING_ON_CLOSE
– Tidak terjadi sesuatu ketika user meminta untuk menutup window.
• HIDE_ON_CLOSE
– Menyembunyikan window ketika user menutup window.
• DISPOSE_ON_CLOSE
– Menyembunyikan dan membuang dari window ketika user menutup
window
• EXIT_ON_CLOSE
Bina Nusantara
– Menutup Aplikasi, menggunakan System.exit(0)
Referensi
•
•
Introduction to Java. 7ed. 2009. Liang. Chapter 13.
Swing
 http://en.wikipedia.org/wiki/Swing_(Java)
•
Container
 http://java.sun.com/docs/books/tutorial/uiswing/components/topl
evel.html
•
How to make Frames (Main Windows)
 http://java.sun.com/docs/books/tutorial/uiswing/components/fram
e.html
Bina Nusantara