JavaFX नियंत्रण और कॉम्बोबॉक्स

कॉम्बोबॉक्स वर्ग एक नियंत्रण बनाता है जो उपयोगकर्ता को ड्रॉप-डाउन सूची के विकल्पों में से एक विकल्प का चयन करने की अनुमति देता है। उपयोगकर्ता द्वारा कॉम्बो बॉक्स नियंत्रण पर क्लिक करने पर ड्रॉप-डाउन सूची दिखाई देती है। जब विकल्पों की संख्या ड्रॉप-डाउन विंडो के आकार से अधिक हो जाती है, तो उपयोगकर्ता आगे के विकल्पों पर स्क्रॉल कर सकता है। इससे भिन्न होता है ChoiceBox जिसका उपयोग मुख्य रूप से तब किया जाता है जब विकल्पों की संख्या अपेक्षाकृत कम होती है।

आयात कथन

javafx.scene.control। सम्मिश्रण पटी

कंस्ट्रक्टर्स

कॉम्बोबॉक्स वर्ग में दो हैं कंस्ट्रक्टर्स इस पर निर्भर करता है कि आप खाली कॉम्बो बॉक्स ऑब्जेक्ट बनाना चाहते हैं या आइटम के साथ आबादी वाले।

एक खाली कॉम्बो बॉक्स बनाने के लिए

ComboBox फल = नया ComboBox ();

एक कॉम्बो बॉक्स ऑब्जेक्ट बनाने के लिए और इसे एक ऑब्जर्वरबलिस्ट से स्ट्रिंग आइटम के साथ पॉप्युलेट करें

अवलोकनीय फल = FXCollections.observableArrayList ( 
"सेब", "केला", "नाशपाती", "स्ट्राबेरी", "पीच", "ऑरेंज", "प्लम");
ComboBox फल = नया ComboBox (फल);

उपयोगी तरीके

यदि आप एक खाली ComboBox ऑब्जेक्ट बनाते हैं तो आप सेट इट्स विधि का उपयोग कर सकते हैं। ऑब्जेक्ट्स के एक ऑब्ज़र्वेबललिस्ट को पास करने से कॉम्बोबॉक्स में आइटम सेट हो जाएंगे।

instagram viewer

अवलोकनीय फल = FXCollections.observableArrayList ( 
"सेब", "केला", "नाशपाती", "स्ट्राबेरी", "पीच", "ऑरेंज", "प्लम");
fruit.setItems (फल);

यदि आप बाद में कॉम्बो बॉक्स सूची में आइटम जोड़ना चाहते हैं, तो आप getItems विधि के AddAll विधि का उपयोग कर सकते हैं। यह आइटम को विकल्प सूची के अंत में जोड़ देगा:

fruit.getItems ()। AddAll ("मेलन", "चेरी", "ब्लैकबेरी");

कॉम्बो बॉक्स विकल्प सूची में किसी विशेष स्थान पर एक विकल्प जोड़ने के लिए getItems विधि की ऐड विधि का उपयोग करें। यह तरीका एक इंडेक्स वैल्यू और वह मूल्य लेता है जो आप जोड़ना चाहते हैं:

fruit.getItems () जोड़ें (1, "नींबू");

ध्यान दें: ComboBox के सूचकांक मान 0 से शुरू होते हैं। उदाहरण के लिए, ऊपर दिए गए "नींबू" के उपरोक्त मूल्य को कॉम्बो बॉक्स विकल्प सूची में स्थिति 2 पर डाला जाएगा क्योंकि सूचकांक 1 है।

कॉम्बो बॉक्स विकल्प सूची में एक विकल्प का चयन करने के लिए, सेटवैल्यू विधि का उपयोग करें:

fruit.setValue ( "चेरी");

यदि सेटवैल्यू पद्धति में दिया गया मान सूची में नहीं है, तो मूल्य अभी भी चुना जाएगा। हालांकि, इसका मतलब यह नहीं है कि यह मान सूची में जोड़ा गया है। यदि उपयोगकर्ता बाद में एक और मूल्य चुनता है, तो प्रारंभिक मूल्य अब चयनित होने वाली सूची में नहीं होगा।

कॉम्बो बॉक्स में वर्तमान में चयनित आइटम का मूल्य प्राप्त करने के लिए, getItems विधि का उपयोग करें:

स्ट्रिंग चयनित = fruit.getValue () .String ();

उपयोग टिप्स

कॉम्बोबॉक्स ड्रॉपडाउन सूची द्वारा आम तौर पर प्रस्तुत किए गए विकल्पों की संख्या दस है (जब तक कि इसमें दस से कम आइटम नहीं हैं, जिस स्थिति में यह आइटमों की संख्या में चूक करता है)। इस नंबर को setVigureRowCount विधि का उपयोग करके बदला जा सकता है:

fruit.setVoubleRowCount (25);

दोबारा, यदि सूची में आइटमों की संख्या सेटविजनलरोवाउंट विधि में निर्धारित मूल्य से कम है, तो कॉम्बो बॉक्स ड्रॉपडाउन में आइटम की संख्या प्रदर्शित करने के लिए कॉम्बो बॉक्स डिफ़ॉल्ट होगा।

हैंडलिंग घटनाएँ

कॉम्बो बॉक्स ऑब्जेक्ट पर आइटम्स के चयन को ट्रैक करने के लिए आप डेट के ऐड लिस्टनर विधि का उपयोग कर सकते हैं ChangeMistener बनाने के लिए SelectionModel की चयनित ItemProperty विधि यह परिवर्तन घटनाओं को उठाएगी कॉम्बो बॉक्स के लिए:

अंतिम लेबल चयनसूची = नया लेबल ();
fruit.getSelectionModel ()। selectedItemProperty ()। addListener (
नया चेंजलिस्टर () {
सार्वजनिक शून्य बदल गया (ऑब्ज़र्वेबलबल ऑव,
स्ट्रिंग Old_val, स्ट्रिंग new_val) {
चयनलैब.सेटटेक्स्ट (new_val);
}
});
instagram story viewer