QML:将项目拖动到 ScrollView 之外时会被裁剪

QML: Drag items get clipped when dragged outside of a ScrollView

我有一个包含几个可拖动矩形的 ScrollView。

当我将某个项目拖到该 ScrollView 之外时,我希望它保持可见,但它在 ScrollView 的边缘被剪掉了。

我试过调整 z 值,但完全没有效果。知道我还能尝试什么吗?

拖动矩形时,您需要将矩形的父级更改为 ScrollView 的父级。

如果您希望矩形在拖动后始终不在 ScrollView 之外,请在鼠标释放后分配一个新状态而不是 when: dragMe.drag.active

Item{
    id: root
    width: 500
    height: 500
    ScrollView {
        width: 200
        height: 200

        Item{
            width: 500
            height: 500

            Rectangle{
                id: rect
                color: "red"
                width: 50
                height: 50
                MouseArea{
                    id: dragMe
                    drag.target: parent
                    anchors.fill: parent
                }
                states: State {
                    when: dragMe.drag.active
                    ParentChange { target: rect; parent: root }
                }
            }
        }
    }
}