Graphical User Interface (GUI)
Pemrograman Berorientasi Objek 2
Pendahuluan
Bahasa pemrograman java telah mendukung adanya pemrograman berbasis GUI (Graphical User Interface). Class yang merepresentasikan GUI ini berada pada paket Javax.swing, Sebelum swing, fitur GUI didukung oleh API Java yang disebut dengan Abstract Window Toolkit (AWT). AWT ini merupakan library yang pertamakali diperkenalkan oleh java, namun Sun tidak merekomendasikan penggunaan komponen GUI dari AWT.
Pemrograman Berorientasi Objek 3
Komponen Swing
• Top Level Container : merupakan container dasar dimana komponen lainya diletakkan.
– JFrame, JDialog, dan Applet.
• Intermediate Container : kontainer pertama dimana komponen lain diletakkan
– JPanel, JScrollPane, JTabbedPane, JToolBar, JSplitPane.
Pemrograman Berorientasi Objek 4
Komponen Swing (Lanjutan)
• Atomic Component : Komponen yang memiliki fungsi spesifik dan menerima interaksi langsung dari pengguna.
– JButton, JTextField, JLabel, JTextArea, dsb.
• Layout Manager : digunakan untuk mengatur tataletak dan posisi komponen dalam kontainer.
– BorderLayout, GridBagLayout, FlowLayout, dsb.
Top Level Container
Komponen GUI akan ditampilkan dalam hirarki container dan menjadikan top level container sebagai container root nya. Setiap komponen GUI hanya dapat dimuat pada satu top-level container. Dan setiap top-level
container memiliki satu content pane yang berisi komponenkomponen GUI
Container Hierarky
• Setiap komponen GUI berbasis swing paling tidak memiliki satu container hierarky dengan JFrame sebagai rootnya.
• Jika sebuah aplikasi memiliki satu window utama dan dua dialog artinya aplikasi tersebut memiliki tiga container hierarchy dan juga tiga top-level container
• Satu container hierarchy memiliki Jframe sebagai root, dan dua yang lain memiliki JDialog sebagai root Pemrograman Berorientasi Objek 9
Kelas JFrame
• JFrame merupakan top level container yang digunakan untuk menampung komponen pada aplikasi berbasis gui, java memiliki class yang mendukung pembuatan dan pengaturan frame, class frame berada pada paket javax.swing.JFrame.
• Class JFrame merupakan subclass dari java.awt.frame yang juga masih merupakan subclass dari java.awt.windows,
Properties yang sering digunakan
Intermediate Container
Merupakan container perantara antara Top Level Container dengan Atomic Component. Contoh
intermediate container yang sering digunakan :
– JPanel
– JTabbedPane
– JToolbar, dsb
Pemrograman Berorientasi Objek 15
JPanel
Merupakan intermediate container yang berfungsi untuk menempatkan komponen-komponen lain, secara hierarchy berada dibawah top level container.
Atomic Component
Merupakan komponen-komponen yang memiliki fungsi spesifik dan menerima interaksi langsung dari user. Contoh yang sering digunakan :
– JLabel
– JTextField
– JButton
– JTextArea
– JSpinner, dsb
JLabel
label digunakan untuk menampilkan informasi, informasi yang ditampilkan berupa teks string.
JTextField
JTextField berfungsi untuk menampilkan maupun sebagai inputan, berbeda dengan JLabel yang berfungsi hanya sebagai output atau menampilkan sebuah nilai / teks string, JTextField selain dapat digunakan sebagai output dapat juga digunakan sebagai inputan. Nilai yang dimasukkan pada JTextField akan direpresentasikan sebagai teks String
JComboBox
JComboBox digunakan untuk pemilihan suatu nilai dalam bentuk drop down list, nilai yang dimasukkan diurutkan berdasarkan item index
(array)
JButton
Button sering kita jumpai dalam berbagai aplikasi berbasis gui, kita sering menggunakanya sebagai interface untuk melakukan eksekusi suatu perintah