Badiyanto, S.Kom.,M.Kom. Tujuan Intruksional Mampu menjelaskan dan menggunakan komponen pemilihan JListbox Mampu menjelaskan dan menggunakan komponen pemilihan JComboBox 2 1
Pokok Bahasan Menciptakan JComboBox Mengakses isi JComboBox Menciptakan JList Menambah isi JList Menghapus isi JList Memindahkan isi Jlist Membaca pilihan single/multiple 3 JComboBox JComboBox, yang memungkinkan pengguna memilih salah satu dari beberapa pilihan, dapat memiliki dua bentuk yang sangat berbeda. Bentuk default kotak kombo bisa diedit, yang menampilkan sebuah tombol dan drop-down daftar nilai. Bentuk kedua, yang disebut kotak kombo yang dapat diedit, fitur kolom teks dengan tombol kecil. Pengguna dapat mengetik nilai pada kolom teks atau klik tombol untuk menampilkan daftar drop-down. 4 2
JComboBox Constructor JComboBox() Menciptakan sebuah JComboBox dengan model data default. JComboBox(ComboBoxModel amodel) Menciptakan suatu ComboBox yang mengambil materi nya dari suatu ComboBox model yang ada. JComboBox(Object[] items) Menciptakan suatu JComboBox yang berisi element pada array JComboBox(Vector<?> items) Menciptakan suatu JComboBoxyang berisi element vektor. 5 JComboBox Methode void additem(object anobject) Menambahkan isi element pada JComboBox Contoh : jcmb.additem( Yogyakarta ); jcmb.additem( Solo ); jcmb.additem( Semarang ); 6 3
methode Object getitemat(int index) menghasilkan nilai isi elemen pada posisi index Contoh: int i = jcmb.getselectedindex(); String x = jcmb.getitemat(i).tostring()); i adalah urutan ke i 7 methode int getitemcount() menghasilkan nilai integer jumlah elemen pada komponent JComboBox void insertitemat(object anobject, int index) Menyisipkan sejumlah elemen pada posisi tertentu 8 4
methode void removeallitems() Menghapus semua isi elemen Contoh jcmb.removeallitems(); void removeitemat(int anindex) Menghapus elemen tertentu Contoh: jcmb.removeitemat( jcmb.getselectedindex()); 9 Contoh Mengisikan lewat Properties Hasil generate code jcmbkota.setmodel(new javax.swing.defaultcomboboxmodel(new String[] { "Yogyakarta", "Sleman", "Bantul", "Gunung Kidul", "Kulon Progo" )); 10 5
Event (kejadian) jcmbkotaactionperformed() kejadian akan menjalankan proses ketika mengklik kombo Contoh Program : private void jcmbkotaactionperformed( java.awt.event.actionevent evt) { int i=jcmbkota.getselectedindex(); jtfindex.settext(""+i); jtfkota.settext( jcmbkota.getitemat(i).tostring()); 11 JListbox Jlist adalah komponen yang digunakan untuk menyajikan kotak pilihan,. Jumlah pilihan akan nampak sesuai dengan ukuran jendela. Jika pilihanya lebih banyak maka jendela akan menggulung dengan menekan scroll bar (dalam container JScrollPane). User bisa memilih lebih dari satu dengan memblok 12 6
JList Constructor Jlist() Menciptakan sebuah JList dengan model yang kosong. JList(ListModel) Menciptakan suatu daftar dengan awal mendaftar materi yang ditetapkan. JList(Object[]) Secara implisit menciptakan suatu Listmodel yang tetap; JList(Vector) Memodifikasi dengan array 13 JList Methode void addselectioninterval(int s, int d) Menetapkan pilihan untuk menjadi kesatuan interval tertentu dengan pilihan saat ini. void clearselection () Menghapus pilihan, isselectionempty jika kosong hasilnya true int getlayoutorientation () Mengembalikan orientasi tata letak properti untuk daftar: VERTICAL VERTICAL_WRAP HORIZONTAL_WRAP 14 7
JList getlayoutorientation VERTICAL VERTICAL_WRAP HORIZONTAL_WRAP 15 JList int getmaxselectionindex () Mengembalikan indeks terbesar sel yang dipilih, atau -1 jika tidak dipilih. int getminselectionindex () Mengembalikan indeks terkecil sel yang dipilih, atau -1 jika tidak. ListModel getmodel () Mengembalikan model data yang menyimpan daftar item yang ditampilkan oleh komponen JList. 16 8
JList int getselectedindex () Mengembalikan indeks terkecil sel yang dipilih; seleksi ketika hanya satu item yang dipilih dalam daftar. int [] getselectedindices () Mengembalikan sebuah array dari semua indeks yang dipilih, dalam urutan naik Obyek getselectedvalue () Mengembalikan nilai terkecil sel yang dipilih indeks; nilai yang dipilih ketika hanya satu item yang dipilih dalam daftar. Object [] getselectedvalues () Mengembalikan sebuah array dari semua nilai-nilai yang dipilih, dalam urutan naik berdasarkan indeks dalam daftar. 17 JList boolean isselectedindex (int index) Mengembalikan nilai true jika indeks tertentu dipilih, kalau tidak salah. boolean isselectionempty () Mengembalikan nilai true jika tidak ada yang dipilih, kalau tidak salah. void setlistdata (Object [] listdata) Membuat sebuah ListModel dari sebuah array objek, dan panggilan setmodel. void setlistdata (Vector <?> listdata) Membuat sebuah ListModel dari vektor dan panggilan setmodel. void setmodel (ListModel model) Set model yang mewakili isi atau "nilai" dari daftar, perubahan properti akan memberitahu listener, dan kemudian membersihkan daftar seleksi. 18 9
JList void setselectedindex (int index) Memilih satu sel. void setselectedindices (int [] indeks) Perubahan seleksi menjadi himpunan ditentukan oleh indeks array yang diberikan. void setselectedvalue (Object anobject, boolean shouldscroll) Memilih objek tertentu dari daftar. 19 Contoh Rancangan Form 20 10
contoh Menyertakan kelas package per3; DefaultListModel // @author badi// import javax.swing.defaultlistmodel; public class NewJFrame5 extends javax.swing.jframe { String buah[]={"mangga","jambu","nangka","durian","salak", "Apel","Jeruk","Rambutan","Duku","Pepaya"; DefaultListModel pilih; public NewJFrame5() { initcomponents(); pilih = new DefaultListModel(); lstbuah.setmodel(pilih); Menciptakan instan kelas Isi elemen array (buah) 21 event Inisialisasi isi listbuah Lewat events->windows-> windowopened Pengisian dengan loop private void formwindowopened(java.awt.event.windowevent evt) { for (int i=0;i<=lstbuah.getmodel().getsize();i++) pilih.addelement(buah[i].tostring()); Mengisi element pilihan JList 22 11
event Membaca sesuai pilihan events->mouse->mouseclicked Nomor urut dalam list (larik) private void lstbuahmouseclicked( java.awt.event.mouseevent evt) { tfhasil.settext( lstbuah.getselectedvalue().tostring()); tfindeks.settext(""+lstbuah.getselectedindex()); Methode memperoleh isi yang dipilih 23 Menambah dan Menghapus isi JList Untuk menambah isi Jlist menggunakan metode addelement() menghapus menggunakan metode removeelementat(). Contoh: 24 12
Menambahkan isi JList menggunakan kelas DefaultListModel package per3; import javax.swing.defaultlistmodel; Menyertakan kelas DefaultListModel public class NewJFrame6 extends javax.swing.jframe { DefaultListModel kota1; DefaultListModel kota2; public NewJFrame6() { initcomponents(); kota1 = new DefaultListModel(); lstkota1.setmodel(kota1); kota2 = new DefaultListModel(); lstkota2.setmodel(kota2); kota1.addelement("yogya"); kota1.addelement("solo"); kota1.addelement("klaten"); kota1.addelement("magelang"); kota1.addelement("salatiga"); Deklarasi kota1, kota2 listmodel Klas instan kota1, kota2 lstkota2 terisi list kota2 menambahkan isi elemen kota1 25 Menambah progran saat mengklik tombol Pindahkan>>> events->action->actionperformed private void btnpindahkanactionperformed( java.awt.event.actionevent evt) { // TODO add your handling code here: kota2.addelement(lstkota1.getselectedvalue()); kota1.removeelementat(lstkota1.getselectedindex()); Menambahkan elemen kota2, sesuai pilihan di kota1 Menghapus elemen kota1 sesuai pilihan 26 13
Memindah isi JList menggunakan cara mengeblok pilihan Menyimpan jumlah pilihan ke var index[] private void btnpindahkanactionperformed( java.awt.event.actionevent evt) { int index[] = lstkota1.getselectedindices(); Object kota[] = lstkota1.getselectedvalues(); for(int i=0; i<index.length; i++){ kota2.addelement(kota[i]); kota1.removeelement(kota[i]); Pilihan yang diblok simpan ke var kota[] Menambah kota2, mengapus kota1 sesuai nomor index, yang di blok 27 Pertanyaan? 28 14