QQuickWidget触摸屏笔输入

时间:2020-06-15 08:04:34

标签: qt qml qtquick2 qt-quick qtwidgets

我正在尝试从触摸屏(Panasonic Toughbook)获得笔或手指输入。在QML方面,我无法获得单击或点击输入。我已经尝试了使用所有指针类型和设备的TapHandler,但是它不起作用。如果我使用QWidget(例如QPushButton),我可以用笔单击,但是qml不起作用。我也检查事件。我可以将鼠标事件用于QQuickWidget,但不适用于qml。

import QtQuick 2.12

Item {
    id: root

    Rectangle {
        anchors.fill: parent
        color: "#bed3d4"
        focus: true

        TapHandler {
            enabled: true
            acceptedButtons: Qt.LeftButton
            onTapped: {
                console.log("Clicked")
            }
        }

        TapHandler {
            enabled: true
            acceptedPointerTypes: PointerDevice.AllPointerTypes
            acceptedDevices: PointerDevice.AllDevices
            onTapped: {
                console.log("Tapped")
            }
        }
    }
}

在此代码中,单击有效,但点击无效。

1 个答案:

答案 0 :(得分:0)

我想在QQuickWidget中启用触摸输入,必须使用setAttribute(Qt :: WA_AcceptTouchEvents)启用WA_AcceptTouchEvents标志。