qml实现拖动

首先:在定义    来记录鼠标位置

         property point pressPos: "0,0"

    property point itemPos: "0,0"
 
 
  
Rectangle{width: 600; height: 500;color: "#3A3223";
    MouseArea{
        anchors.fill: parent
 onPressed: { pressPos = Qt.point(mouse.x,mouse.y); itemPos = Qt.point(iddragitem.x,iddragitem.y); }
 onPositionChanged: {
     if(pressed){
         iddragitem.x = itemPos.x + mouse.x - pressPos.x;
         iddragitem.y = itemPos.y + mouse.y - pressPos.y;
     }
 }

    Rectangle{//被拖动框
        x:50
        y:50
    id: iddragitem; width: 400; height: 400;   
    }    
    }
    }

你可能感兴趣的:(QT)