Basic GUI
description
Transcript of Basic GUI
Basic GUI
Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 13Tahun : 2008Versi : 1/0
Bina Nusantara
Learning Outcomes
Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu: – Mendemonstrasikan pemograman
Java menggunakan Grafik User Interface.
Bina Nusantara
Outline Materi
• Introduction• Java GUI API• Swing VS AWT• Frame• Adding Component to a Frame • Layout Manager• Panel
Bina Nusantara
Introduction
• GUI (Graphical User Interface) : metode interaksi secara grafis antara user dengan komputer.
• API (Application Programming Interface) : suatu kumpulan fungsi-fungsi, prosedur-prosedur, kelas-kelas dalam sebuah operating system, library yang dapat mendukung apa yang diminta oleh program.
Bina Nusantara
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– More Robust– More Versatile– Flexible library– Komponennya tergantung pada platform.– Lightweight components, untuk JApplet, JFrame dan JDialog
masih heavyweight component karena masih tergantung dari AWT.
– Contoh kelas :• JButton, JLabel, JList, JComponent, dll dari javax.swing• Umumnya semua kelas menggunakan “J” di depan nama kelasnya
Bina Nusantara
Frame
• 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 komponen-komponen yang ada di dalam frame.
Bina Nusantara
Frame ( lanjut .. )
• Contoh Kode :
• Output :
300
400
Bina Nusantara
Adding Component to a Frame
• Untuk menambahkan komponen pada frame menggunakan method add.
• Setiap JFrame terdiri dari 1 buah content pane (java.awt.Container)
• Contoh :– Kita menambahkan 1 komponen dari JButton pada JFrame
secara langsung.• Buat objek button
JButton btn = new JButton(“Submit”);
• Tambahkan objek button ke dalam frame dengan method addfrm.add(btn);
– Kita dapat menggunakan kelas Container untuk menambahkannya dengan cara :
• Ketika objek telah dibuat maka langsung menambahkannya dengan:
java.awt.Container con = frm.getContentPane();con.add(btn);
Bina Nusantara
Adding Component to a Frame( lanjut .. )
• Contoh Kode :
• Output :
1 buah Button yang dihandle oleh 1 content pane frame tersebut
Bina Nusantara
Layout Manager
• Mengatur tampilan komponen-komponen pada kontainer.
• Ada 3 layout manager dasar : FlowLayout GridLayout BorderLayout
Bina Nusantara
Layout Manager( lanjut ..)
• FlowLayout Simple Layout Manager Peletakan komponen perbaris dari kiri ke
kanan 3 Konstanta :
• FlowLayout.RIGHT• FlowLayout.CENTER• FlowLayout.LEFT
Bina Nusantara
Layout Manager( lanjut ..)
• Contoh FlowLayout
Bina Nusantara
Layout Manager( lanjut ..)
• GridLayout Diatur dalam grid (matix) Dapat mendefinisikan jumlah baris dan kolom
waktu dipanggil konstruktor
Bina Nusantara
Layout Manager( lanjut ..)
• Contoh GridLayout
Bina Nusantara
Layout Manager( lanjut ..)
• BorderLayout Terdiri dari 5 area peletakan :
• BorderLayout.EAST• BorderLayout.SOUTH• BorderLayout.WEST• BorderLayout.NORTH• BorderLayout.CENTER
Bina Nusantara
Layout Manager( lanjut ..)
• Contoh BorderLayout
Bina Nusantara
Panel
• Untuk mengatur letak komponen.• 1 panel hanya menghandle 1 layout.• Menggunakan JPanel.• Letak default panel : FlowLayout• Menggunakan fungsi
add(Component), menambahkan komponen pada panel
Bina Nusantara
Panel ( lanjut .. )
• Contoh Panel
Bina Nusantara
Referensi
• Introduction to Java Programming. 7ed. Liang. 2009. Chapter 13, hal 447
• GUI Basic http://en.wikipedia.org/wiki/Graphical_user_interface http://en.wikipedia.org/wiki/JFrame http://www.dreamincode.net/forums/showtopic17705.ht
m http://www.ged.fi/DesignPatterns/