QtQuick/Qml系列教程

Qml拖放

2018-11-29  本文已影响0人  zhengtianzuo
  1. 需要在被拖放Item里设置拖放属性:
        Drag.active: dragArea.drag.active;//激活状态
        Drag.supportedActions: Qt.CopyAction;//设置支持的动作为拷贝
        Drag.dragType: Drag.Automatic;//拖放类型为自动
        Drag.mimeData: {"text": text};//拖放源
  1. 设置被拖放Item的鼠标区域:
        MouseArea {
            id: dragArea;
            anchors.fill: parent;
            drag.target: parent;//关键是这句, 设置目标
        }
  1. 接收端Item就比较好设置了, 增加DropArea代码:
            DropArea {
                id: dropContainer
                anchors.fill: parent;
                onDropped: {
                    if (drop.supportedActions == Qt.CopyAction){
                        targetEdit.text = drop.getDataAsString("text")//获取拖放的字符串并赋值
                    }
                }
            }

拖放字符串和图片其实是差不多的

show.gif

需要完整代码请访问QtQuickExamples

上一篇 下一篇

猜你喜欢

热点阅读