JComboBox memerlukan tempat yang minimalis dibandingkan dengan JRadioButton, selain itu JComboBox mempunyai bentuk ComboBox yang dapat diedit, sehingga memungkinkan user untuk memilih pilihan yang tidak ada dalam item JComboBox.
Contoh JComboBox
JList memungkinkan multiple selection dengan menekan tombol : SHIFT + Left Click atau CTRL + Left Click. Kemampuan ini membantu user jika harus melakukan multiple selection.
JComboBox dan JList sangat fleksibel, kita dapat menambah dan menghapus item di dalamnya dengan sangat mudah. Sehingga cocok digunakan untuk merepresentasikan pilihan yang item pilihannya bersifat dinamis.
Aplikasi di bawah ini adalah contoh penggunaan JComboBox dan JList.
Contoh program menggunakan JComboBox dan JList
Bagian pertama program ini terdapat sebuah JComboBox dan JLabel, setiap kali item di dalam JComboBox dipilih, JLabel di sebelahnya akan menampilkan item yang dipilih tersebut. Bagian kedua program ini terdapat sebuah JList dan JTextArea. Setiap kali item-item di dalam JList dipilih, JTextArea akan menampilkan item-item yang dipilih tersebut dipisahkan dengan koma (,).
Ikuti langkah-langkah berikut ini untuk membuat program di atas:
1. Buatlah class JFrame Form baru dan beri namaListAndCombo.java.
2. Buat tampilan program diatas menggunakan Matisse, kemudian tambahkan komponen-komponen:
a) Empat buah JLabel : lblPekerjaan, lblPilihanPekerjaan, lblHobby, lblPilihanHobby.
b) Satu buah JComboBox : cmbPekerjaan
c) Satu buah JList : lstHobby
d) Satu buah JtextArea : txtPilihanHobby
3. Merubah isi JComboBox. Untuk merubah isi dari JComboBox dan JList kita akan menggunakan Jendela Properties, Jendela ini letaknya di sebelah kanan bawah, dibawah Jendela Pallete dan akan muncul hanya jika jendela Design yang dipilih.
Jendela Properties
Pilih komponen JComboBox di Jendela Design, Jendela Properties akan menampilkan properties dari JComboBox. Pada bagian model di dalam Jendela Properties masukkan item Pelajar, Mahasiswa, Programmer, Technical Writer dan Tester. Setiap item dipisahkan dengan koma (,).
4. Merubah isi JList. Pilih JList di Jendela Design maka Jendela Properties untuk JList akan muncul. Di bagian model isikan item : Membaca, Olahraga, Trekking, Coding, Menonton Film, Bersepeda dan Mengajar. Setiap item dipisahkan dengan koma (,).
5. Menangani pemilihan JComboBox. Klik kanan JComboBox di Jendela Design, kemudian pilih menu :
Events > Action > actionPerformed
Jendela Code akan terbuka, tambahkan code seperti di bawah ini :
private void cmbPekerjaanActionPerformed(
java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
lblPilihanPekerjaan.setText(
"Pekerjaan anda : " +
cmbPekerjaan.getSelectedItem());
}
method getSelectedItem dari JComboBox digunakan untuk memperoleh item yang sedang di pilih dalam JComboBox. 6. Menangani event pemilihan dari JList. Event yang digunakan untuk menangani pemilihan item dari JList berbeda dengan JComboBox. JList akan mengaktifkan ListSelection event ketika user memilih item dalam JList. Untuk menangani event ini, lakukan langkah-langkah berikut :
a) Klik kanan pada JList di dalam Jendela Design, kemudian pilih menu :
Events > ListSelection > valueChanged
b) Dalam jendela kode yang ketik kode seperti berikut ini :
private void lstHobbyValueChanged(
javax.swing.event.ListSelectionEvent evt) {
// TODO add your handling code here:
Object[] selectedItems =
lstHobby.getSelectedValues();
if(selectedItems == null ||
selectedItems.length == 0)
txtPilihanHobby.setText("");
else{
StringBuffer strValues = new
StringBuffer();
for(Object item : selectedItems){
strValues.append(item.toString() + ", ");
}
txtPilihanHobby.setText(
strValues.substring(0, strValues.length() 2));
}
}
javax.swing.event.ListSelectionEvent evt) {
// TODO add your handling code here:
Object[] selectedItems =
lstHobby.getSelectedValues();
if(selectedItems == null ||
selectedItems.length == 0)
txtPilihanHobby.setText("");
else{
StringBuffer strValues = new
StringBuffer();
for(Object item : selectedItems){
strValues.append(item.toString() + ", ");
}
txtPilihanHobby.setText(
strValues.substring(0, strValues.length() 2));
}
}
Catatan :
Method getSelectedValues dari JList mengembalikan item-item yang terpilih.
JComboBox dan JList digunakan jika item pilihan bersifat dinamis.
BalasHapusJComboBox dapat mempunyai bentuk yang dapat diedit sehingga user dapat memasukkan pilihan yang tidak ada dalam daftar.
JList dapat menerima pilihan lebih dari satu.
Jendela Properties tidak hanya berisi properties
BalasHapusdari komponen swing yang sedang aktif tetapi
juga berisi Tab Events dan Tab Code.
Tab Events digunakan untuk memasukkan kode yang akan dieksekusi ketika event tertentu dikenakan terhadap komponen swing.
Tab Code digunakan untuk mendefinisikan kode apa yang harus dieksekusi dalam kondisi tertentu, misalnya setelah object komponen swing diinisialisasi.