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")
                }
            }
        }
    }
相关推荐
人还是要有梦想的3 天前
QT qml布局讲解
qt·布局·qml
Rookie Linux7 天前
使用Qt6 QML以及第三方库FluentUI、PCapPlusPlus开发一个自定义抓包软件
网络·c++·qt·cmake·qml
谁刺我心8 天前
[QtCPP]Examples使用示例-QtMultimedia、QMediaPlayer、Audio音频引擎测试mp3播放
qt·音视频·qml
Quz9 天前
Qt Quick 粒子系统(二):系统控制与生命周期管理
qt·qml·粒子系统
Quz9 天前
Qt Quick 粒子系统(三):发射器深度解析
qt·qml·粒子系统
nnnnichijou10 天前
Qt 6.9 嵌入式 Linux 交叉编译全栈填坑指南(以树莓派5 AArch64 为例
qt·嵌入式·交叉编译·qml·树莓派5
Quz11 天前
Qt Quick 粒子系统(一):架构总览与四层模型
qt·架构·qml
Ulyanov17 天前
深入QML-Python通信 构建响应式交互界面的桥梁设计:QML+PySide6现代开发入门(五)
开发语言·python·算法·交互·qml·系统仿真
东方.既白1 个月前
QML简易地铁导乘屏
qml
Ulyanov1 个月前
PySide6 + QML 混合编程全景解析:从底层原理到企业级实战
python·pyside6·qml·雷达电子对抗