Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Basic GUI Matakuliah Pertemuan Tahun Versi : T0984 / Algoritma dan Metode Object Oriented Programming II : 13 : 2008 : 1/0 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 komponenkomponen yang ada di dalam frame. Bina Nusantara Frame ( lanjut .. ) • Contoh Kode : 400 • Output : 300 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 add frm.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 : • • • • • Bina Nusantara BorderLayout.EAST BorderLayout.SOUTH BorderLayout.WEST BorderLayout.NORTH BorderLayout.CENTER 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 Bina Nusantara http://en.wikipedia.org/wiki/Graphical_user_interface http://en.wikipedia.org/wiki/JFrame http://www.dreamincode.net/forums/showtopic17705.htm http://www.ged.fi/DesignPatterns/