Как осуществить передвижение прямоугольника на соседнюю клетку при нажатии на него ? qml
Rectangle{
id:brick
width: 80; height: 80
}
onClicked:
Ответы (1 шт):
Автор решения: eri
→ Ссылка
Прямоугольник не принимает клик - нужно на него натянуть MouseArea. Переместить его можно поменяв координаты x,y. Как именно он будет перемещаться задается через Behavior, где можно указать разные анимации
import QtQuick 2.0
Rectangle {
width: 240
height: 240
Rectangle {
width: 80
height: 80
color: "red"
MouseArea {
anchors.fill: parent
property var direction: 0
onClicked: {
if (direction == 0)
parent.x += 80
if (direction == 1)
parent.y += 80
if (direction == 3) {
parent.x += 80
parent.y += 80
}
direction += 1
}
}
Behavior on x {
NumberAnimation {
id: bouncebehavior
duration: 1000
easing {
type: Easing.OutElastic
amplitude: 1
period: 0.5
}
}
}
Behavior on y {
animation: bouncebehavior
}
}
}