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")
                }
            }
        }
    }
相关推荐
Ulyanov1 天前
《现代 Python 桌面应用架构实战:PySide6 + QML 从入门到工程化》:QML 声明式语法与霓虹按钮 —— 当 Python 遇见现代美学
开发语言·python·ui·qml·系统仿真·雷达电子对抗仿真
gdizcm6 天前
QT QML嵌入Widget窗体并通信
qt·qml·widget与qml
谁刺我心8 天前
[QML]Functional功能型控件-虚拟键盘
开发语言·qml·虚拟键盘
Ulyanov8 天前
《PySide6 GUI开发指南:QML核心与实践》 第十篇:综合实战——构建完整的跨平台个人管理应用
开发语言·python·qt·ui·交互·qml·雷达电子战系统仿真
Ulyanov8 天前
《PySide6 GUI开发指南:QML核心与实践》 第八篇:性能优化大师——QML应用性能调优实战
python·qt·ui·性能优化·qml·系统仿真
Ulyanov9 天前
《PySide6 GUI开发指南:QML核心与实践》 第一篇:GUI新纪元——QML与PySide6生态系统全景
开发语言·python·qt·qml·雷达电子对抗
大橘15 天前
【qml-5.1】qml与c++交互(QML_ELEMENT/QML_SINGLETON)
开发语言·c++·qt·交互·qml
镜中月ss1 个月前
QT中的资源树
开发语言·qt·qml
习惯就好zz2 个月前
Qt Quick 系统托盘完整实践
开发语言·qt·qml·系统托盘·system tray·qapplication·qguiapplication
爱搞事的程小猿3 个月前
qml自定义扩展模块
c++·qt·qml