Java lanjutan mempelajari cara-cara desain user-interface dalam program-program GUI (Graphical User Interface). Bahasan difokuskan ke penggunaan komponen-komponen Swing beserta API (Application Programming Interface) yang terdapat di dalamnya.
Objek-objek dalam java diantaranya adalah
JPanel = objek yang digunakan sebagai tempat component
JCheckBox = untuk menampilkan beberapa item pilihan yang dapat dipilih lebih dari satu
JButtonGroup = objek yang digunakan untuk pengelompokan beberapa objek
JLabel = objek yang digunakan untuk menampilkan text di dalam form
JTextField = objek yang digunakan untuk menginput data / text di dalam form
JButton = objek yang digunakan untuk memberikan perintah
JRadioButton = objek yang digunakan untuk menampilkan pilihan dan yang dapat dipilih hanya satu. Biasanya dibuat dalam group
Perintah-perintah dasar dalam java
Super = untuk menampilkan caption dalam form
SetBounds = untuk menentukan letak form dan ukurannya
SetVisible = untuk menampilkan atau menutup form
ShowMessageDialog = untuk menampilkan kotak pesan
Point 1
class MySwingApplication extends JFrame implements ActionListener {}
Kelas yang akan digunakan untuk menangani event (dalam hal ini, kelas MySwingApplication harus mengimplementasikan salah satu event listener) dalam kasus ini, kelas mengimplementasikan
ActionListener.
Point 2
Listener harus didaftarkan ke dalam objek yang akan diperankan sebagai event source (dalam hal ini, object button)
JButton button = new JButton(”Klik aku!!”);
button.addActionListener(this);
Point 3
Kelas yang mengimplementasikan salah satu listener harus mengimplementasikan method- method yang diperlukan sesuai dengan yang dideklarasikan pada interface listener yang digunakan. Dalam contoh kita gunakan interface ActionListener sebagai listener-nya sehingga kita perlu mengimplementasikan method actionPerformed()
Secara umum program yang dibuat dalam Java menggunakan metode menangkap kejadian yang dilakuka pada objek-objek yang ada pada form (misalnya tombol di-klik atau radiobutton di pilih, dsb). Sehingga ada 2 pengelompokan besar yang harus dipahami dalam membuat program:
1) Event Source
Yaitu suatu objek yang membangkitkan event (kejadian). Contohnya ketika objek tombol (JButton) di-klik maka JButton dianggap sebagai event source (sumber kejadian). Kejadiannya sendiri dapat berupa keluar form, menjumlahkan 2 buah textfield atau membersihkan textfield. Agar dapat membangitkan suatu kejadian, event source harus mendaftarkan listener atau event listener (perekam kejadian).
Contoh
JButton bhitung = new JButton(”Hitung”); //definisi event source JButton
bhitung.setBounds(10,70,20,20); //ukuran JButton
bhitung.addActionListener(this); //mendaftarkan listener
Objek event source pada Java
JButton
JCheckBox
JRadioButton
JChoise
JList
2) Event Listener
Adalah objek yang diberitahu pada saat suatu event terjadi pada event source. Event listener diimplementasikan ke dalam bentuk method dalam suatu interface. Sebagai contoh interface ActionListener mendeklarasikan sebuah method dengan nama actionPerformed().
Terdapat dua macam tampilan (User Interface) pada Java, yaitu Character User Interface (CUI) dan Graphical User Interface (GUI).
Pada CUI, seorang user berinteraksi dengan sistem menggunakan command. Seorang user harus mengingat semua perintah yang digunakan untuk berinteraksi dengan sistem. Contoh sistem operasi dengan CUI adalah MS-DOS. Sedangkan pada GUI, disebut juga “picture-oriented” seorang user berinteraksi dengan sistem menggunakan “gambar visual” tanpa harus menghafal setiap perintah yang digunakan. Perintah-perintah yang digunakan untuk berinteraksi dengan sistem dapat dijalankan dengan mengklik mouse. Contoh sistem operasi dengan GUI adalah Microsoft Windows.
Saat ini hampir semua sistem operasi menggunakan GUI. Suatu aplikasi menggunakan elemen-elemen GUI untuk berinteraksi dengan sistem operasi.
Untuk menangani pemrograman window pada Java dapat digunakan dua cara, yaitu dengan Abstract Window Toolkit (AWT) dan dengan Java Foundation Classes (JFC) atau disebut Swing.
Pada Java 1.0, seorang programmer menangani pemrograman window menggunakan AWT. Tampilan window pada komponen AWT berbeda untuk masing-masing plattfom atau sistem operasi. Karena setiap sistem operasi menggunakan sistem window yang berbeda. Misalnya komponen AWT yang dijalankan di lingkungan Microsoft Windows akan tampak berbeda apabila dijalankan di lingkungan Macintosh atau Linux. Komponen AWT ini terdapat pada paket java.awt.
Untuk mengatasi perbedaan tampilan (look and feel) pada masing-masing plattfom, maka diperkenalkanlah Java Foundation Classes (JFC) yang pertama kali dikeluarkan pada tahun 1997. Untuk selanjutnya JFC ini disebut dengan komponen Swing. Dengan komponen swing, maka tampilan aplikasi menjadi sama pada masing-masing plattfom (Plattform Independent).
Untuk dapat menggunakan komponen tersebut diperlukan suatu kontainer. Kontainer adalah komponen yang dapat ditempati komponen lain. Pada swing terdapat 4 jenis Top Level Container, yaitu: JFrame, JDialog, JWindow dan JApplet. Top Level Container adalah suatu kontainer yang dapat berdiri sendiri.