एक ऑब्जेक्ट से दूसरे ऑब्जेक्ट को एनीमेशन स्विच नहीं कर सकता। आईडी बदलती है (यह लॉग में 'दुनिया' प्रिंट करती है), लेकिन यह एनीमेशन को स्थानांतरित नहीं करती है: hello
अभी भी चमकती है और world
स्थिर है।एनीमेशन लक्ष्य बदलना
यह a.restart()
पर कॉल करते समय सही ढंग से काम करता है। जब कोई फ़ंक्शन नहीं होता है, तो बस बाइंडिंग्स, आप onChanged
का उपयोग कर सकते हैं और यह नियंत्रित कर सकते हैं कि एनीमेशन कैसे बंद हो जाता है (पूर्ण या रोकें) if (running) { complete(); restart(); }
।
import QtQuick 2.5
Column {
ColorAnimation {
id: a
target: lab1
property: "color"
running: true
loops: Animation.Infinite
duration: 500
from: "black"
to: "red"
}
Text {
id: lab1
text: "hello"
MouseArea {
anchors.fill: parent
onClicked: {
a.target = lab2
console.log("changed")
console.log(a.target.text)
}
}
}
Text {
id: lab2
text: "world"
}
}
यह एक बग (या कम से कम एक दस्तावेज़ीकरण समस्या) जैसा दिखता है तो bugreports.qt.io पर एक बग रिपोर्ट दर्ज करें। – cmannett85