मैं क्यूएमएल में लिस्ट व्यू से एक भूमिका तक पहुंचने की कोशिश कर रहा हूं। अनिवार्य रूप से, मैं अपने QML में यह है:क्यूएमएल में एक सूचीदृश्य से आप वर्तमान इटैम की भूमिकाओं तक कैसे पहुंच सकते हैं?
ListView {
id: myId
model: myModel
delegate: Item {
Text {
text: model.text
}
Text {
text: model.moreText
}
}
}
myModel
एक QAbstractListModel कार्यान्वयन है। इसका क्यूएमएल भाग एक पुन: प्रयोज्य घटक है, इसलिए मॉडल में विभिन्न डेटा प्रकारों के साथ कई अलग-अलग भूमिकाएं हो सकती हैं। मैं क्या करना चाहता हूं सूची सूची के currentItem
संपत्ति की किसी दिए गए भूमिका के मूल्य से जुड़ा हुआ है। दूसरे शब्दों में, मैं कुछ अन्य Component
पेज कि ListView में वर्तमान में चयनित आइटम के लिए एक संपत्ति के लिए बाध्य कर सकता है के रूप में इस पर करना चाहते हैं:
Text {
text: myId.currentItem.text // Or myId.currentItem.model.text (or something similar)
}
कृपया ध्यान रखें कि मैं सामान्य रूप से उपलब्ध इस की जरूरत है रखने के लिए, क्योंकि मैं इसे कई मॉडल प्रकारों के लिए बहुत कुछ करूँगा और मैं प्रत्येक मॉडल और ListView के लिए उस तरह के कस्टम कोड को लिखने की कोशिश नहीं कर रहा हूं।
ऐसा लगता है कि वर्तमान में चयनित आइटम की संपत्ति तक पहुंच बनाना आसान होना चाहिए, लेकिन जहां तक मैं यह कह सकता हूं कि यह संभव नहीं है। इस तथ्य से समस्या जटिल है कि केवल एक भूमिका होने पर मॉडल अलग-अलग व्यवहार किए जाते हैं। इसका मतलब है कि कभी-कभी आप model.roleName
के माध्यम से अपनी भूमिकाओं तक पहुंचते हैं, जबकि जब केवल एक ही भूमिका होती है तो आप modelData
का उपयोग करते हैं।
अगर किसी के पास कोई सुझाव है, तो मैं वास्तव में इसकी सराहना करता हूं। बहुत बहुत धन्यवाद!
संपादित
मैंने पाया इस:
http://comments.gmane.org/gmane.comp.lib.qt.qml/1778
बहरहाल, यह मेरे लिए काम करने के लिए प्रकट नहीं होता। जब मैं अपनी क्यूएमएल स्क्रिप्ट में डेटा का उपयोग करने का प्रयास करता हूं तो मुझे टाइप त्रुटियां मिल रही हैं, और कोई प्रकार का कास्टिंग उपलब्ध नहीं है, इसलिए मुझे यकीन नहीं है कि क्या करना है। किसी भी सुझाव का स्वागत है!
धन्यवाद!
जैक
आपकी प्रतिक्रिया के लिए बहुत बहुत धन्यवाद! हम्म ... मैंने सोचा कि यह पूरी तरह से कोशिश की है, लेकिन कुछ याद आ रही है जो मैंने याद किया है। यह जानना अच्छा लगता है कि यह किसी के लिए काम कर रहा है! मैं इस समाधान को फिर से दूंगा और देख सकता हूं कि यह चाल है या नहीं। मैं model.role और modelData के बीच स्पष्टीकरण की सराहना करता हूं। मैं आपको बता दूंगा कि चीजें कैसे निकलती हैं। एक बार फिर धन्यवाद! –
ऐसा लगता है कि यह काम करता है। यकीन नहीं है कि मैं पहले क्या खो गया था। किसी भी तरह से, इस समाधान में इतनी उम्मीद है कि अब यह स्टैक ओवरफ्लो पर है, अन्य लोग इसे जल्दी से ढूंढ पाएंगे। एक बार फिर धन्यवाद! –
क्या विभिन्न मॉडल प्रकारों पर सार सारण करने का कोई तरीका है? मैं पूछ रहा हूं क्योंकि मैं एक क्यूएमएल सूची मॉडल का परीक्षण कर रहा हूं और उसी क्यूएमएल कोड का उपयोग कर सी ++ एप्लिकेशन में ऑब्जेक्ट सूची के दौरान एक ऑब्जेक्ट सूची को संभालना चाहता हूं। – ssc