如何在QML拖放示例中发出onDropped?

在qml文档中有一个拖拉的示例 :

import QtQuick 2.0 Item { width: 200; height: 200 DropArea { x: 75; y: 75 width: 50; height: 50 onDropped: console.log("dropped") onEntered: console.log("entered") Rectangle { anchors.fill: parent color: "green" visible: parent.containsDrag } } Rectangle { x: 10; y: 10 width: 20; height: 20 color: "red" Drag.active: dragArea.drag.active Drag.hotSpot.x: 10 Drag.hotSpot.y: 10 MouseArea { id: dragArea anchors.fill: parent drag.target: parent } } } 

我添加了两行“onDropped”和“onEntered”。 通过拖动小矩形触发“onEntered”,我无法触发“onDropped”。

我该怎么做才能触发它?

显然,需要通过调用Drag对象上的drop()方法显式生成drop

尝试在drag.target: parent添加此行,就在drag.target: parent上方

 onReleased: parent.Drag.drop()