basic gui
DESCRIPTION
Basic GUI. Matakuliah: T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan: 13 Tahun: 2008 Versi: 1/0. Learning Outcomes. Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu: Mendemonstrasikan pemograman Java menggunakan Grafik User Interface. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/1.jpg)
Basic GUI
Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 13Tahun : 2008Versi : 1/0
![Page 2: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/2.jpg)
Bina Nusantara
Learning Outcomes
Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu: – Mendemonstrasikan pemograman
Java menggunakan Grafik User Interface.
![Page 3: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/3.jpg)
Bina Nusantara
Outline Materi
• Introduction• Java GUI API• Swing VS AWT• Frame• Adding Component to a Frame • Layout Manager• Panel
![Page 4: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/4.jpg)
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.
![Page 5: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/5.jpg)
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.
![Page 6: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/6.jpg)
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
![Page 7: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/7.jpg)
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.
![Page 8: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/8.jpg)
Bina Nusantara
Frame ( lanjut .. )
• Contoh Kode :
• Output :
300
400
![Page 9: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/9.jpg)
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);
![Page 10: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/10.jpg)
Bina Nusantara
Adding Component to a Frame( lanjut .. )
• Contoh Kode :
• Output :
1 buah Button yang dihandle oleh 1 content pane frame tersebut
![Page 11: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/11.jpg)
Bina Nusantara
Layout Manager
• Mengatur tampilan komponen-komponen pada kontainer.
• Ada 3 layout manager dasar : FlowLayout GridLayout BorderLayout
![Page 12: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/12.jpg)
Bina Nusantara
Layout Manager( lanjut ..)
• FlowLayout Simple Layout Manager Peletakan komponen perbaris dari kiri ke
kanan 3 Konstanta :
• FlowLayout.RIGHT• FlowLayout.CENTER• FlowLayout.LEFT
![Page 13: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/13.jpg)
Bina Nusantara
Layout Manager( lanjut ..)
• Contoh FlowLayout
![Page 14: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/14.jpg)
Bina Nusantara
Layout Manager( lanjut ..)
• GridLayout Diatur dalam grid (matix) Dapat mendefinisikan jumlah baris dan kolom
waktu dipanggil konstruktor
![Page 15: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/15.jpg)
Bina Nusantara
Layout Manager( lanjut ..)
• Contoh GridLayout
![Page 16: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/16.jpg)
Bina Nusantara
Layout Manager( lanjut ..)
• BorderLayout Terdiri dari 5 area peletakan :
• BorderLayout.EAST• BorderLayout.SOUTH• BorderLayout.WEST• BorderLayout.NORTH• BorderLayout.CENTER
![Page 17: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/17.jpg)
Bina Nusantara
Layout Manager( lanjut ..)
• Contoh BorderLayout
![Page 18: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/18.jpg)
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
![Page 19: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/19.jpg)
Bina Nusantara
Panel ( lanjut .. )
• Contoh Panel
![Page 20: Basic GUI](https://reader035.vdocuments.mx/reader035/viewer/2022062221/56813ac0550346895da2cf65/html5/thumbnails/20.jpg)
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/