QML通过鼠标拖动的位置

当通过鼠标拖动Rectangle 的位置时,可以使用Qt Quick的MouseArea组件来实现

cpp 复制代码
 Rectangle {
        id: rect
        x:0;y:0
        width: 200; height: 100
        color: "lightblue"

        MouseArea {
            id: mouseArea
            anchors.fill: parent
            drag.target: rect//要拖动的项目的ID
            drag.axis: Drag.XAndYAxis//拖动的轴方向
            //限制目标可以沿着相应轴拖动的距离
            drag.minimumX: 0
            drag.maximumX:  root.width-rect.width
            drag.minimumY: 0
            drag.maximumY:  root.height-rect.height
            drag.filterChildren: false//拖动不可以覆盖子类的MouseAreas
             //子类
            Rectangle {
                color: "yellow"
                x: 50; y : 50
                width: 100; height: 40
                MouseArea {
                    anchors.fill: parent
                    onClicked: console.log("Clicked")
                }
            }
        }
    }
相关推荐
机器视觉知识推荐、就业指导2 天前
开源QML控件:进度条滑动控件(含源码下载链接)
前端·qt·开源·qml
byxdaz5 天前
QML TabBar 和 TabButton 组件
qml
byxdaz7 天前
QML中日期处理类
qml
byxdaz7 天前
QML中的JSON 处理
qml
byxdaz7 天前
QML动画--ParallelAnimation和SequentialAnimation
qml
byxdaz8 天前
QML Rectangle 组件
qml
火山上的企鹅13 天前
异形遮罩之QML中的 `OpacityMask` 实战
开发语言·qml·opacitymask
byxdaz14 天前
QML ListView 与 C++ 模型交互
qml
byxdaz17 天前
QML Item 元素
qml
苏克贝塔17 天前
QML面试笔记--UI设计篇05容器控件
qml