I am creating a simple drawing application and would like my app handle pen (stylus like Apple Pencil) input. The app is written in Qml/Qt Quick. I know that when using QWidgets you can handle tablet events using QTabletEvent (example), but how I can handle pen input in QML (using MouseArea does not work and I had no luck with PointHandler either). Does anyone know if it is possible to handle Pen input in Qt Quick?
How to handle Stylus/Pen input in QML
1.2k views Asked by reckless At
2
There are 2 answers
5
Albertino80
On
Try using QML TapHandler: https://doc.qt.io/qt-5/qml-qtquick-taphandler.html
acceptedDevices: PointerDevice.Mouse | PointerDevice.Stylus
Related Questions in QT
- C++ template using pointer and non pointer arguments in a QVector
- Using QPointer and QObject::connect with C++11
- qt How to style a QToolBar > QToolButton overflow button?
- Qt - Repeatedly write at beginning of file
- C++ Mongodb driver, not working
- deletion and cleanup of worker thread in Qt crashes
- How to drap item from QTableView to QPushButton?
- get image type from qimage
- C++ QT Getting part from QString
- How to connect a destroyed signal of C++ object from QML?
- How to get shader version from QOpenGLShader?
- Size of Qt QRadioButton able to get smaller, but not larger than default
- error WinSock.h has already been included Boost Windows Qt
- How to call a non-class member function with pointers as parameters with QtConcurrent::run?
- What is the difference between MinGW SEH and MinGW SJLJ?
Related Questions in QML
- Connecting Signal QML to C++ (Qt5)
- How to connect a destroyed signal of C++ object from QML?
- QML Dialog is broken?
- how to connect the signal to slot in pyqt5 and qml?
- QML Canvas.requestAnimationFrame explodes
- QTimer::singleShot equivalent for QML
- Changing model doesn't affect ComboBox
- setting wrapMode property of Text in ScrollView
- where and what to learn to use Qt5?
- Qt5/QML Displaying a custom route on a map
- Qt application disappears
- QtQuick2 - QML reusable item focus changes when selecting/clicking outside/inside of root item
- QML window resize/move flicker
- QQmlPropertyCache: QQuickItem has FastProperty class info, but has not installed property accessors
- Qt application trying to load platform plugin "xcb" instead of "eglfs"
Related Questions in TOUCH
- Removing sprite when Touched
- CSS Menu system not working in IOS 8
- TouchUI Image disable upload in dialog
- Content of iframe (ionic app) doesn't scroll on Internet Explorer using touch
- How do i change the modification/creation date of a folder
- How to detect whether touch slide is taking me out of browser window on tablets?
- Generate Java Swing UI Touch Screen Interaction Heat Maps
- Disable taphold default event, cross device
- Cocos2d Node not accepting Touches
- (UNITY3d android game) When i don't touch the screen, my fps are lower than when i touch
- Detect active touchscreen on Linux (and if multitouch)
- Seamlessly passing drag&drop actions from children controls to parent ScatterViewItem
- touch should not updated `updated_at` on destroy in Rails3
- Why is touchstart event after click?
- Don't fire onclick for touches - Javascript
Related Questions in STYLUS-PEN
- Support Apple Pencil in my app
- Samsung Note 3: Activity Memory Leak after pressing SPen side button
- Disable Stylus Gestures for WinForm
- Change default stylus pointer style in android
- Identify stylus barrel button (win32)
- Write and edit text in Windows (particularly Visual Studio) using a stylus
- Using the Surface Pro pen on websites
- How To Custom Render UWP Wet Ink
- How do I get pen pressure values in Unity (using S Pen on Android)?
- How to detect Pixelbook Pen button?
- Stylus pen input not working on Unity android
- Drag images on website with stylus/pen
- Spen touch listener not working after update to Lollipop
- How to draw on a HTML5 canvas with a stylus
- Memory leak in Android Spen library
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Looking at the example linked by @Albertino80 , I subclassed
QQuickWindowwhich inheritsQWindowand hence is able to receive tablet events (void tabletEvent(QTabletEvent* event). These events can then be used to emit appropriate signals that can be propapated to other QObjects. This method works ok, but it has the problem that event coordinates are not local to the item where they are consumed, instead one has to manually recalculate the position of each event by mapping the coordinates to the custom window.