Jump to content

Delayed Animations/it

From Qt Wiki


Italiano English Spanish

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.