क्यूटी 5.4 में, नया "QtQuick UI फ़ाइल" बनाते समय टेम्पलेट दो फाइलें उत्पन्न करता है: MyScreen.qml
और MyScreen.ui.qml
।.ui.qml फ़ाइलों के साथ काम करना
MyScreen.ui.qml
फ़ाइल केवल यूआई के लिए प्रतीत होती है, क्योंकि क्यूटी निर्माता सुझाव देता है कि आपको इसे केवल डिज़ाइन मोड में संपादित करना चाहिए। इसका तात्पर्य है कि मुझे यूआई ऑब्जेक्ट्स (लेबल्स, बटन इत्यादि ...) बनाना चाहिए और किसी भी तरह उन्हें MyScreen.qml
फ़ाइल में संदर्भित करना चाहिए जहां तर्क होगा। सिद्धांत रूप में यह बहुत अच्छा लगता है, लेकिन दुर्भाग्यवश क्यूटी इन 2 फ़ाइलों के साथ काम करने के तरीके के किसी भी उदाहरण के साथ नहीं आती है।
MyScreen.qml
:
यहाँ उन फ़ाइलों की सामग्री हैं
import QtQuick 2.4
MyScreen {
}
MyScreen.ui.qml
(मैं डिज़ाइन मोड में पाठ लेबल जोड़ा):
import QtQuick 2.4
Item {
width: 400
height: 400
Text {
id: text1
x: 144
y: 151
width: 103
height: 31
text: qsTr("Text")
font.pixelSize: 12
}
}
मैं एक MyScreen
के लिए instantiating की कोशिश की StackView
(नीचे देखें) में उपयोग करें, लेकिन (असुरक्षित रूप से) मुझे लेबल नहीं दिखाई देता है।
main.qml
:
import QtQuick 2.4
import QtQuick.Controls 1.3
import QtQuick.Window 2.2
Window {
visible: true
StackView {
id: stack
anchors.fill: parent
initialItem: myscreen
}
MyScreen {
id: myscreen
anchors.fill: parent
}
}
एक QML नौसिखिया के लिए कोई संकेत?
कोई त्रुटि संदेश चलते समय दिखाया गया है? मुझे लगता है कि समस्या यह है कि आपके पास एक ही नाम के साथ दो घटक हैं: 'MyScreen'। MyScreen.qml और MyScreen.ui.qml दोनों 'MyScreen' ऑब्जेक्ट बनाता है और संघर्ष करते हैं। QtQuick UI फ़ाइल बनाते समय, "घटक नाम" और "घटक फ़ॉर्म नाम" को अलग-अलग नाम देने का प्रयास करें। – mcchu
डुह :) धन्यवाद mcchu, अगर आप इसे उत्तर में रखते हैं तो मैं आपको कुछ अंक दूंगा! – Tim