У меня есть Item
, который немного большой. Я хочу изменить размер при перетаскивании и убедиться, что center всегда перетаскивается. Ниже приведена пробная версия (для простоты я не устанавливаю центр Item
в положение мыши, а также не меняю размер.), Однако положение x
будет сброшено сразу после того, как я Измени это. Есть ли способ избежать этого.
import QtQuick 2.7
import QtQuick.Window 2.2
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello Quick")
Rectangle{
id: item_
width: 300
height: 300
color: "red"
MouseArea{
id: drag_
anchors.fill: parent
drag.target: item_
}
states: State{
when: drag_.drag.active
PropertyChanges {
target: item_
x: 100
y: 100
}
}
onXChanged: console.log("item_.x: ", x)
}
}
Выход:
qml: item_.x: 100
qml: item_.x: 0
qml: item_.x: 1
qml: item_.x: 2
qml: item_.x: 3
qml: item_.x: 4
qml: item_.x: 5
qml: item_.x: 6
qml: item_.x: 7
qml: item_.x: 8
qml: item_.x: 10