如何在 QML 中处理 Stylus/Pen 输入

How to handle Stylus/Pen input in QML

我正在创建一个简单的绘图应用程序,并且想要我的应用程序处理笔(像 Apple Pencil 这样的手写笔)输入。该应用程序是用 Qml/Qt Quick 编写的。我知道在使用 QWidgets 时你可以使用 QTabletEvent (example) 来处理数位板事件,但是我如何在 QML 中处理笔输入(使用 MouseArea 不起作用而且我没有运气PointHandler 要么)。有谁知道是否可以在 Qt Quick 中处理笔输入?

尝试使用 QML TapHandler:https://doc.qt.io/qt-5/qml-qtquick-taphandler.html

acceptedDevices: PointerDevice.Mouse | PointerDevice.Stylus

查看@Albertino80 链接的示例,我继承了 QQuickWindow 的子类 QWindow,因此能够接收平板电脑事件(void tabletEvent(QTabletEvent* event)。然后可以将这些事件用于发出可以传播到其他 QObjects 的适当信号。此方法工作正常,但存在事件坐标不是使用它们的项目本地的问题,而是必须通过映射手动重新计算每个事件的位置自定义坐标 window.