2012-04-18 12 views

Odpowiedz

7

można wystawiać widget widok na QML z:

QmlApplicationViewer viewer; 
QDeclarativeContext *context = viewer.rootContext(); 
context->setContextProperty("viewerWidget", &viewer); 

Następnie zmodyfikować jego pos właściwość, aby przesunąć okno:

MouseArea {   
    anchors.fill: parent 
    property variant previousPosition   
    onPressed: { 
     previousPosition = Qt.point(mouseX, mouseY) 
    } 
    onPositionChanged: { 
     if (pressedButtons == Qt.LeftButton) { 
      var dx = mouseX - previousPosition.x 
      var dy = mouseY - previousPosition.y 
      viewerWidget.pos = Qt.point(viewerWidget.pos.x + dx, 
             viewerWidget.pos.y + dy) 
     } 
    } 
}  
+0

można zmienić 'wariantowej nieruchomość previousPosition' do czegoś podobnego' nieruchomości point clickPos: Qt.point (1, 1) '. – troyane