QML新功能——TapHandler信號處理器

TapHandler是用於觸摸屏上的點擊或鼠標單擊的信號處理器。使用時需要導入import QtQuick 2.12

舉例來說,對於以前的Rectangle,如果鼠標點擊時執行某代碼塊,一般會在該Rectangle上添加一個子對象MouseArea。在新的QML版本中可使用TapHandler。

TapHandler有效敲擊手勢的檢測取決於gesturePolicy。 默認值爲DragThreshold,它要求按下和釋放鍵在空間和時間上都緊密靠近。

import QtQuick 2.12
import QtQuick.Window 2.12

Window {
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")
    Rectangle {
        width: 600
        height: 400
        anchors.centerIn: parent
        color: "lightgray"
        TapHandler {
            //點擊屏幕時,修改了pressed屬性,觸發onPressedChanged
            onPressedChanged: {
                console.log("press ? : ", pressed)
            }
            //長按時觸發onLongPressed
            onLongPressed: {
                console.log("long pressed")
            }
        }
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章