2012-07-27 14 views
16

मैं FXML का उपयोग कर ComboBox में डिफ़ॉल्ट मान कैसे सेट कर सकता हूं?कॉम्बोबॉक्स FXML डिफ़ॉल्ट मान

<ComboBox fx:id="cbo_Bacteriologie_Aesculine" prefHeight="21.0" prefWidth="105.0" GridPane.columnIndex="1" GridPane.rowIndex="0"> 
    <items> 
     <FXCollections fx:factory="observableArrayList"> 
      <String fx:value="NVT" /> 
      <String fx:value="Bezig" /> 
      <String fx:value="Positief" /> 
      <String fx:value="Negatief" /> 
     </FXCollections> 
    </items> 
</ComboBox> 

मैं डिफ़ॉल्ट रूप से NVT चुनना चाहता हूं। मैंने selected="selected" जोड़ने की कोशिश की और ऐसा लगता है कि सही वाक्यविन्यास नहीं दिख रहा है।

क्या दृश्य बिल्डर का उपयोग करके सूचीबद्ध वस्तुओं को संपादित करना संभव है? मुझे यह प्रतीत नहीं होता है।

उत्तर

37

इस का उपयोग करें:

<ComboBox> 
    <items> 
     <FXCollections fx:factory="observableArrayList"> 
      <String fx:value="NVT" /> 
      <String fx:value="Bezig" /> 
      <String fx:value="Positief" /> 
      <String fx:value="Negatief" /> 
     </FXCollections> 
    </items> 
    <value> 
     <String fx:value="NVT" /> 
    </value> 
</ComboBox> 
+6

'<कॉम्बोबॉक्स मूल्य =" एनवीटी "> 'भी काम करता है और क्लीनर दिखता है। – T3rm1

+0

देता है 'javafx.fxml.LoadException: स्ट्रिंग एक वैध प्रकार नहीं है। – Bopsi

+0

@BappadityaSasmal आपको स्ट्रिंग क्लास आयात करने की आवश्यकता है। '' – UnKnown

8

मुझे नहीं लगता कि यह FXML में संभव है। आपको घटक के प्रारंभ में, नियंत्रक में प्रारंभ करने की आवश्यकता होगी, उदाहरण के लिए तत्व Bezig का चयन करने के लिए निम्न पंक्ति cbo_Bacteriologie_Aesculine.getSelectionModel().setSelectedIndex(1); का उपयोग करना।

लेकिन अगर आपको इसे FXML में करने का कोई तरीका मिलता है, तो मुझे रूचि है।

संपादित करें: यह FXML में संभव है। आप इसे Guedolino के उत्तर (https://stackoverflow.com/a/14436371/1344424) में देख सकते हैं, जो इस प्रश्न का सही उत्तर बनना चाहिए।

+1

ठीक है मैं निम्नलिखित कोड 'cbo_Bacteriologie_Aesculine.getSelectionModel() selectFirst() का इस्तेमाल किया;' और यह काम कर देता है। मुझे आशा है कि एफएक्सएमएल में इसे संभालने के लिए समर्थन आएगा :) – Perneel

6

मैं पहली बार सुझाव दिया विधि

setSelectedItem (टी) SelectionModel में पहुँच संरक्षित है के साथ एक अजीब त्रुटि मिल गया जहां टी है एक प्रकार-चर: टी फैली वस्तु वर्ग SelectionModel में घोषित

मुझे

getSelectionModel().select("NVT"); 

के लिए एक आकर्षण की तरह काम किया। ।