首页 文章

拖动视图时QML可以轻弹打印高度/宽度

提问于
浏览
1

我希望能够在拖动时打印 Flickable 视图的高度/宽度 . 我相信它可以使用 onDraggingChangedonMovingChanged 完成,因为类似的事件监听器 onTextChanged 在文本控件中执行监听文本更改的工作 . 我试过这个:

Flickable{
    id: flick
    height: parent.height - 40
    width: parent.width - 40
    anchors.bottom: parent.bottom
    anchors.right: parent.right
    anchors.margins: 20
    flickableDirection: Flickable.HorizontalAndVerticalFlick
    Rectangle{
        anchors.fill: parent
        color: "steelblue"
    }
    onMovingChanged: {
        console.log("onMovingChanged")
        console.log("height:", height)
    }
    onDraggingChanged: {
        console.log("onDraggingChanged")
        console.log("height:", height)
    }
}

但是那些事件监听器只会在拖动/移动可滑动的开始和结束时打印高度 . 那我该怎么做呢?

1 回答

  • 1

    我相信 Flickable.contentXChangedFlickable.contentYChanged 信号是你需要的 .

    仅当拖动开始和结束时才会发射

    • Flickable.draggingChanged .
      仅当Flickable开始和结束移动时才会发射
    • Flickable.movingChanged .
      每次水平移动内容时都会发出
    • Flickable.contentXChanged .
      每次垂直移动内容时都会发出
    • Flickable.contentYChanged .

    每次文本更改时也会发出 Text.textChanged .

相关问题