Hai mai desiderato fare in modo che quando l’utente fa clic su qualcosa, si scatenino una serie di effetti ritardati? Ad esempio, l’apertura e la chiusura di una lista?
Il seguente esempio parte con un cerchio rosso. Quando l’utente fa clic sul cerchio, anima un rettangolo e fa partire un timer. Quando il timer scatta, anima il rettangolo e lo fa ritornare dentro il cerchio.
- import QtQuick 1.0
- Rectangle {
- property int time: 800
- property int size: 300
- width: size; height: size; radius: size
- color: "red"
- Behavior on radius { NumberAnimation { duration: time } }
- Timer {
- id: reset
- interval: time;
- onTriggered: parent.radius = size
- }
- MouseArea {
- anchors.fill: parent
- onClicked: {
- parent.radius = 0;
- reset.start()
- }
- }
- }
Nota che se vuoi che l’animazione inizi subito dopo la precedente puoi usare SequentialAnimation. Questo esempio ha lo scopo di mostrare i ritardi arbitrari nelle animazioni.
Relativo thread nel forum: http://developer.qt.nokia.com/forums/viewthread/2085/

