61 lines
1.6 KiB
QML
61 lines
1.6 KiB
QML
// Copyright (C) 2017 The Qt Company Ltd.
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
|
|
|
//![0]
|
|
import QtQuick
|
|
|
|
Rectangle {
|
|
id: page
|
|
width: 320; height: 480
|
|
color: "lightgray"
|
|
|
|
Text {
|
|
id: helloText
|
|
text: "Hello world!"
|
|
y: 30
|
|
anchors.horizontalCenter: page.horizontalCenter
|
|
font.pointSize: 24; font.bold: true
|
|
|
|
//![1]
|
|
MouseArea { id: mouseArea; anchors.fill: parent }
|
|
//![1]
|
|
|
|
//![2]
|
|
states: State {
|
|
name: "down"; when: mouseArea.pressed == true
|
|
PropertyChanges {
|
|
helloText {
|
|
y: 160
|
|
rotation: 180
|
|
color: "red"
|
|
}
|
|
}
|
|
}
|
|
//![2]
|
|
|
|
//![3]
|
|
transitions: Transition {
|
|
from: ""; to: "down"; reversible: true
|
|
ParallelAnimation {
|
|
NumberAnimation { properties: "y,rotation"; duration: 500; easing.type: Easing.InOutQuad }
|
|
ColorAnimation { duration: 500 }
|
|
}
|
|
}
|
|
//![3]
|
|
}
|
|
|
|
Grid {
|
|
id: colorPicker
|
|
x: 4; anchors.bottom: page.bottom; anchors.bottomMargin: 4
|
|
rows: 2; columns: 3; spacing: 3
|
|
|
|
Cell { cellColor: "red"; onClicked: helloText.color = cellColor }
|
|
Cell { cellColor: "green"; onClicked: helloText.color = cellColor }
|
|
Cell { cellColor: "blue"; onClicked: helloText.color = cellColor }
|
|
Cell { cellColor: "yellow"; onClicked: helloText.color = cellColor }
|
|
Cell { cellColor: "steelblue"; onClicked: helloText.color = cellColor }
|
|
Cell { cellColor: "black"; onClicked: helloText.color = cellColor }
|
|
}
|
|
}
|
|
//![0]
|