Delayed Animations/bg: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 11: Line 11:
<code><br />import QtQuick 1.0
<code><br />import QtQuick 1.0


Rectangle {<br /> property int time: 800<br /> property int size: 300<br /> width: size; height: size; radius: size<br /> color: &quot;red&amp;quot;<br /> Behavior on radius { NumberAnimation { duration: time } }<br /> Timer {<br /> id: reset<br /> interval: time;<br /> onTriggered: parent.radius = size<br /> }
Rectangle {<br /> property int time: 800<br /> property int size: 300<br /> width: size; height: size; radius: size<br /> color: "red"<br /> Behavior on radius { NumberAnimation { duration: time } }<br /> Timer {<br /> id: reset<br /> interval: time;<br /> onTriggered: parent.radius = size<br /> }


MouseArea {<br /> anchors.fill: parent<br /> onClicked: {<br /> parent.radius = 0;<br /> reset.start()<br /> }<br /> }<br />}<br /></code>
MouseArea {<br /> anchors.fill: parent<br /> onClicked: {<br /> parent.radius = 0;<br /> reset.start()<br /> }<br /> }<br />}<br /></code>


Забележете, че ако искате просто втората анимация да тръгне веднага след другата, можете да използвате ''SequentialAnimation''. Целта на този пример е да покаже произволно закъснение в анимациите.
Забележете, че ако искате просто втората анимация да тръгне веднага след другата, можете да използвате ''SequentialAnimation''. Целта на този пример е да покаже произволно закъснение в анимациите.

Revision as of 06:38, 25 February 2015



Български English Spanish Italian French 日本語

Забавени аминамции

Някога да сте искали потребителят да натисне нещо и тогава да пуснете серия от забавени събития? На пример, отваряне на лист и затварянето му отново?

Този пример показва червен кръг. Когато потребителят натисне кръга, той се анимира до квадрат и стартира таймер. Когато таймерът изтече, квадрата се анимира обратно до кръг.

<br />import QtQuick 1.0

Rectangle {<br /> property int time: 800<br /> property int size: 300<br /> width: size; height: size; radius: size<br /> color: "red"<br /> Behavior on radius { NumberAnimation { duration: time } }<br /> Timer {<br /> id: reset<br /> interval: time;<br /> onTriggered: parent.radius = size<br /> }

MouseArea {<br /> anchors.fill: parent<br /> onClicked: {<br /> parent.radius = 0;<br /> reset.start()<br /> }<br /> }<br />}<br />

Забележете, че ако искате просто втората анимация да тръгне веднага след другата, можете да използвате SequentialAnimation. Целта на този пример е да покаже произволно закъснение в анимациите.