JComboBox
- एक JComboBox JComponent का विस्तार कर सकते हैं वर्ग और यह एक पाठ क्षेत्र . का संयोजन है और एक ड्रॉप-डाउन सूची जिससे उपयोगकर्ता कोई मान चुन सकता है।
- यदि नियंत्रण का टेक्स्ट फ़ील्ड भाग संपादन योग्य है, तो उपयोगकर्ता फ़ील्ड में एक मान दर्ज कर सकता है या ड्रॉप-डाउन सूची से प्राप्त मान को संपादित कर सकता है।
- डिफ़ॉल्ट रूप से, उपयोगकर्ता को JComboBox के टेक्स्ट फ़ील्ड भाग में डेटा संपादित करने की अनुमति नहीं है . यदि हम उपयोगकर्ता को टेक्स्ट फ़ील्ड को संपादित करने की अनुमति देना चाहते हैं, तो setEditable(true) पर कॉल करें। विधि।
- एक JComboBox एक एक्शन लिस्टनर उत्पन्न कर सकता है , चेंज लिस्टनर या आइटम लिस्टनर जब उपयोगकर्ता कॉम्बो बॉक्स पर कार्रवाई करता है।
- एक getSelectedItem() JComboBox से चयनित या दर्ज आइटम प्राप्त करने के लिए विधि का उपयोग किया जा सकता है।
उदाहरण
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class JEditableComboBoxTest extends JFrame { public JEditableComboBoxTest() { setTitle("JEditableComboBox Test"); setLayout(new BorderLayout()); final JComboBox combobox = new JComboBox(); final JList list = new JList(new DefaultListModel()); add(BorderLayout.NORTH, combobox); add(BorderLayout.CENTER, list); combobox.setEditable(true); combobox.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent ie) { if (ie.getStateChange() == ItemEvent.SELECTED) { ((DefaultListModel) list.getModel()).addElement(combobox.getSelectedItem()); combobox.insertItemAt(combobox.getSelectedItem(), 0); } } }); setSize(new Dimension(375, 250)); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); } public static void main(String[] args) throws Exception { new JEditableComboBoxTest(); } }
आउटपुट