Qml拖放

作者: zhengtianzuo | 来源:发表于2018-11-29 20:18 被阅读0次
    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

    相关文章

      网友评论

        本文标题:Qml拖放

        本文链接:https://www.haomeiwen.com/subject/hnhqcqtx.html