Title: Konstruktor JComboBox
Course: 2024-2| SIF21419|Pemrograman Berorientasi Obyek| 4 SKS|4PT1| Senin, 07.30 - 10.30| Rio Kurniawan, M.Cs > Section: Pertemuan 12: Kuliah Pengganti (KP) Libur Nasional 12 Juni 2025

Konstruktor JComboBox adalah:

1. JComboBox() : membuat JComboBox baru yang kosong.
2. JComboBox(ComboBoxModel M) : membuat JComboBox baru dengan item dari ComboBoxModel yang ditentukan
3. JComboBox(E [ ] i) : membuat JComboBox baru dengan item dari array yang ditentukan.
4. JComboBox(Vector items) : membuat JComboBox baru dengan item dari vektor yang ditentukan

Metode yang umum digunakan adalah:

1. addItem(E item) : menambahkan item ke JComboBox
2. addItemListener(ItemListener l) : menambahkan ItemListener ke JComboBox
3. getItemAt(int i) : mengembalikan item pada indeks i
4. getItemCount() : mengembalikan jumlah item dari daftar
5. getSelectedItem() : mengembalikan item yang dipilih
6. removeItemAt(int i) : menghapus elemen pada indeks i
7. setEditable(boolean b) : boolean b menentukan apakah kotak kombo dapat diedit atau tidak. Jika true dilewatkan maka kotak kombo dapat diedit atau sebaliknya.
8. setSelectedIndex(int ​​i) : memilih elemen JComboBox pada indeks i.
9. showPopup() :menyebabkan kotak kombo menampilkan jendela popupnya.
10. setUI(ComboBoxUI ui) : menetapkan objek L&F yang merender komponen ini.
11. setSelectedItem(Object a) : menetapkan item yang dipilih di area tampilan kotak kombo ke objek dalam argumen.
12. setSelectedIndex(int ​​a) : memilih item pada indeks anIndex.
13. setPopupVisible(boolean v) : mengatur visibilitas popup.
14. setModel(ComboBoxModel a) : menetapkan model data yang digunakan JComboBox untuk mendapatkan daftar item.
15. setMaximumRowCount(int count) : menetapkan jumlah baris maksimum yang ditampilkan JComboBox.
16. setEnabled(boolean b) : mengaktifkan kotak kombo sehingga item dapat dipilih.
17. removeItem(Object anObject) : menghapus item dari daftar item.
18. removeAllItems() : menghapus semua item dari daftar item.
19. removeActionListener(ActionListener l) : menghapus ActionListener.
20. isPopupVisible() : menentukan visibilitas popup.
21. tambahkanPopupMenuListener(PopupMenuListener l) : menambahkan pendengar PopupMenu yang akan mendengarkan pesan pemberitahuan dari bagian popup kotak kombo.
22. getActionCommand() : mengembalikan perintah tindakan yang disertakan dalam peristiwa yang dikirim ke pendengar tindakan.
23. getEditor() : mengembalikan editor yang digunakan untuk melukis dan mengedit item yang dipilih di bidang JComboBox.
24. getItemCount() : mengembalikan jumlah item dalam daftar.
25. getItemListeners() : mengembalikan array semua ItemListeners yang ditambahkan ke JComboBox ini dengan addItemListener().
26. createDefaultKeySelectionManager() : mengembalikan contoh manajer pemilihan kunci default.
27. fireItemStateChanged(ItemEvent e) : memberitahukan semua pendengar yang telah mendaftarkan minat untuk pemberitahuan pada jenis acara ini.
28. firePopupMenuCanceled() : memberitahukan PopupMenuListeners bahwa bagian popup dari kotak kombo telah dibatalkan.
29. firePopupMenuWillBecomeInvisible() : memberitahukan PopupMenuListeners bahwa bagian popup pada kotak kombo telah menjadi tidak terlihat.
30. firePopupMenuWillBecomeVisible() : memberitahukan PopupMenuListeners bahwa bagian popup dari kotak kombo akan menjadi terlihat.
31. setEditor(ComboBoxEditor a) : menetapkan editor yang digunakan untuk melukis dan mengedit item yang dipilih di bidang JComboBox.
32. setActionCommand(String a) : menetapkan perintah tindakan yang harus disertakan dalam peristiwa yang dikirim ke actionListeners.
33. getUI() : mengembalikan objek tampilan dan nuansa yang merender komponen ini.
34. paramString() : mengembalikan representasi string dari JComboBox ini.
35. getUIClassID() : mengembalikan nama kelas Tampilan dan nuansa yang merender komponen ini.
36. getAccessibleContext() : mendapatkan AccessibleContext yang terkait dengan JComboBox ini

Program berikut akan menggambarkan penggunaan JComboBox
1. Program untuk membuat JComboBox sederhana dan menambahkan elemen ke dalamnya.

// Program Java untuk membuat JComboBox sederhana

// dan menambahkan elemen ke dalamnya

impor  java .awt .event . * ;​​

impor  java .awt . * ;​

impor  javax .swing . * ;​

kelas  memecahkan  memperluas  JFrame  mengimplementasikan  ItemListener {

Bahasa Indonesia:

    // bingkai

     JFrame  statis f ;

Bahasa Indonesia:

    // label

    statis  JLabel  l , l1 ;

Bahasa Indonesia:

    // kotak kombo

    statis  JComboBox  c1 ;

Bahasa Indonesia:

    // kelas utama

    publik  statis  void  utama ( String [] args)

    {

        // membuat bingkai baru

        f  =  JFrame baru  ( "bingkai" );

Bahasa Indonesia:

        // membuat objek

        selesaikan  s  =  selesaikan baru  ();

Bahasa Indonesia:

        // mengatur tata letak bingkai

        f.setLayout ( baru  FlowLayout () ) ;

Bahasa Indonesia:

        // array string yang berisi kota

        String  s1 [] = { "Jalpaiguri" , "Mumbai" , "Noida" , "Kolkata" , "New Delhi" };

Bahasa Indonesia:

        // buat kotak centang

        c1  =  JComboBox baru  ( s1 );

Bahasa Indonesia:

        // tambahkan ItemListener

        c1.tambahkanItemListener ( s ) ;​

Bahasa Indonesia:

        // membuat label

        l  =  new  JLabel ( "pilih kota Anda" );

        l1  =  new  JLabel ( "Jalpaiguri dipilih" );

Bahasa Indonesia:

        // mengatur warna teks

        l . setForeground ( Warna . merah );

        l1.setForeground ( Warna.biru ) ;​​​

Bahasa Indonesia:

        // buat panel baru

        JPanel  p  =  JPanel baru  ();

Bahasa Indonesia:

        p.tambahkan ( l ) ;​

Bahasa Indonesia:

        // tambahkan kotak kombo ke panel

        p.add(c1);

​

        p.add(l1);

​

        // add panel to frame

        f.add(p);

​

        // set the size of frame

        f.setSize(400, 300);

​

        f.show();

    }

    public void itemStateChanged(ItemEvent e)

    {

        // if the state combobox is changed

        if (e.getSource() == c1) {

​

            l1.setText(c1.getSelectedItem() + " selected");

        }

    }

}

Output :

2. Program to create two checkbox one editable and other read only

// Java Program to create two  checkbox

// one editable and other read only

import java.awt.event.*;

import java.awt.*;

import javax.swing.*;

class solve extends JFrame implements ItemListener {

​

    // frame

    static JFrame f;

​

    // label

    static JLabel l, l1, l3, l4;

​

    // combobox

    static JComboBox c1, c2;

​

    // main class

    public static void main(String[] args)

    {

        // create a new frame

        f = new JFrame("frame");

​

        // create a object

        solve s = new solve();

​

        // array of string containing cities

        String s1[] = { "Jalpaiguri", "Mumbai", "Noida", "Kolkata", "New Delhi" };

        String s2[] = { "male", "female", "others" };

​

        // create checkbox

        c1 = new JComboBox(s1);

        c2 = new JComboBox(s2);

​

        // set Kolkata and male as selected items

        // using setSelectedIndex

        c1.setSelectedIndex(3);

        c2.setSelectedIndex(0);

​

        // add ItemListener

        c1.addItemListener(s);

        c2.addItemListener(s);

​

        // set the checkbox as editable

        c1.setEditable(true);

​

        // create labels

        l = new JLabel("select your city ");

        l1 = new JLabel("Jalpaiguri selected");

        l3 = new JLabel("select your gender ");

        l4 = new JLabel("Male selected");

​

        // set color of text

        l.setForeground(Color.red);

        l1.setForeground(Color.blue);

        l3.setForeground(Color.red);

        l4.setForeground(Color.blue);

​

        // create a new panel

        JPanel p = new JPanel();

​

        p.add(l);

​

        // add combobox to panel

        p.add(c1);

​

        p.add(l1);

​

        p.add(l3);

​

        // add combobox to panel

        p.add(c2);

​

        p.add(l4);

​

        // set a layout for panel

        p.setLayout(new FlowLayout());

​

        // add panel to frame

        f.add(p);

​

        // set the size of frame

        f.setSize(400, 400);

​

        f.show();

    }

    public void itemStateChanged(ItemEvent e)

    {

        // if the state combobox 1is changed

        if (e.getSource() == c1) {

​

            l1.setText(c1.getSelectedItem() + " selected");

        }

​

        // if state of combobox 2 is changed

        else

            l4.setText(c2.getSelectedItem() + " selected");

    }

}

Output :

3. Program to create a checkbox and add or remove items from it .

// Java  Program to create a checkbox

// and add or remove items from it

import java.awt.event.*;

import java.awt.*;

import javax.swing.*;

class solve11 extends JFrame implements ItemListener, ActionListener {

​

    // frame

    static JFrame f;

​

    // label

    static JLabel l, l1;

​

    // combobox

    static JComboBox c1;

​

    // textfield to add and delete items

    static JTextField tf;

​

    // main class

    public static void main(String[] args)

    {

        // create a new frame

        f = new JFrame("frame");

​

        // create a object

        solve11 s = new solve11();

​

        // set layout of frame

        f.setLayout(new FlowLayout());

​

        // array of string containing cities

        String s1[] = { "Jalpaiguri", "Mumbai", "Noida", "Kolkata", "New Delhi" };

​

        // create checkbox

        c1 = new JComboBox(s1);

​

        // create textfield

        tf = new JTextField(16);

​

        // create add and remove buttons

        JButton b = new JButton("ADD");

        JButton b1 = new JButton("REMOVE");

​

        // add action listener

        b.addActionListener(s);

        b1.addActionListener(s);

​

        // add ItemListener

        c1.addItemListener(s);

​

        // create labels

        l = new JLabel("select your city ");

        l1 = new JLabel("Jalpaiguri selected");

​

        // set color of text

        l.setForeground(Color.red);

        l1.setForeground(Color.blue);

​

        // create a new panel

        JPanel p = new JPanel();

​

        p.add(l);

​

        // add combobox to panel

        p.add(c1);

​

        p.add(l1);

        p.add(tf);

        p.add(b);

        p.add(b1);

​

        f.setLayout(new FlowLayout());

​

        // add panel to frame

        f.add(p);

​

        // set the size of frame

        f.setSize(700, 200);

​

        f.show();

    }

    // if button is pressed

    public void actionPerformed(ActionEvent e)

    {

        String s = e.getActionCommand();

        if (s.equals("ADD")) {

            c1.addItem(tf.getText());

        }

        else {

            c1.removeItem(tf.getText());

        }

    }

​

    public void itemStateChanged(ItemEvent e)

    {

        // if the state combobox is changed

        if (e.getSource() == c1) {

​

            l1.setText(c1.getSelectedItem() + " selected");

        }

    }

}

Output :