Basic GUI Matakuliah : T0984 / Algoritma dan Metode Object Oriented Programming II Pertemuan : 13 Tahun : 2008 Versi : 1/0
Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu: Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu: Mendemonstrasikan pemograman Java menggunakan Grafik User Interface. Bina Nusantara
Adding Component to a Frame Layout Manager Panel 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
Kelas-kelas GUI diklasifikasikan menjadi 3 group : Java GUI API Kelas-kelas GUI diklasifikasikan menjadi 3 group : Container Classes JFrame, JPanel, dan JApplet Component Classes JButton, JTextField, JTextArea, JComboBox, JList, JRadioButton dan JMenu , adalah subclasses dari JComponent. Helper Classes Graphics, Color, Font, FontMetrics dan Dimension. Bina Nusantara
Swing VS AWT AWT (Abstract Windows Toolkit) Swing 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
Tingkatan paling atas dari kontainer untuk menghandle komponen GUI. 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 : 400 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
Mengatur tampilan komponen-komponen pada kontainer. 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
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.htm http://www.ged.fi/DesignPatterns/ Bina Nusantara