QTabletEvent Class
La clase QTabletEvent contiene parámetros que describen un evento Tablet. Más...
| Cabecera: | #include <QTabletEvent> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| Hereda: | QSinglePointEvent |
- Lista de todos los miembros, incluidos los heredados
- Miembros obsoletos
- QTabletEvent es parte de Clases de Eventos.
Funciones Públicas
| QTabletEvent(QEvent::Type type, const QPointingDevice *dev, const QPointF &pos, const QPointF &globalPos, qreal pressure, float xTilt, float yTilt, float tangentialPressure, qreal rotation, float z, Qt::KeyboardModifiers keyState, Qt::MouseButton button, Qt::MouseButtons buttons) | |
| qreal | pressure() const |
| qreal | rotation() const |
| qreal | tangentialPressure() const |
| qreal | xTilt() const |
| qreal | yTilt() const |
| qreal | z() const |
Descripción Detallada
Loseventos de tableta son generados por periféricos de tableta como las tabletas Wacom y otras marcas, y dispositivos de lápiz electromagnético incluidos con algunos tipos de tabletas. (No es lo mismo que QTouchEvent que genera una pantalla táctil, incluso cuando se utiliza un lápiz óptico pasivo en una pantalla táctil).
Los eventos de tableta son similares a los eventos de ratón; por ejemplo, los accesorios x(), y(), pos(), globalX(), globalY() y globalPos() proporcionan la posición del cursor, y se puede ver qué buttons() se pulsan (pulsar la punta del lápiz contra la superficie de la tableta equivale a un botón izquierdo del ratón). Pero los eventos de la tableta también pasan a través de alguna información extra que proporciona el controlador del dispositivo de la tableta; por ejemplo, es posible que desee hacer un renderizado de subpíxeles con coordenadas de mayor resolución (globalPosF()), ajustar el brillo del color en función de la pressure() de la herramienta contra la superficie de la tableta, utilizar diferentes pinceles en función del tipo de herramienta en uso (deviceType()), modular de algún modo la forma del pincel en función de la inclinación de los ejes X e Y de la herramienta con respecto a la superficie de la tableta (xTilt() y yTilt()), y utilizar un borrador virtual en lugar de un pincel si el usuario cambia al otro extremo de un lápiz de doble punta (pointerType()).
Cada evento contiene una bandera de aceptación que indica si el receptor quiere el evento. Debes llamar a QTabletEvent::accept() si manejas el evento de la tableta; de lo contrario, se enviará al widget padre. La excepción son los eventos TabletEnterProximity y TabletLeaveProximity: éstos sólo se envían a QApplication y no se comprueba si son aceptados o no.
La función QWidget::setEnabled() puede utilizarse para activar o desactivar los eventos de ratón, tableta y teclado de un widget.
El manejador de eventos QWidget::tabletEvent() recibe eventos TabletPress, TabletRelease y TabletMove. Qt enviará primero un evento de tableta, luego si no es aceptado por ningún widget, enviará un evento de ratón. Esto permite a los usuarios de aplicaciones que no están diseñadas para tabletas utilizar una tableta como un ratón. Sin embargo, las aplicaciones de dibujo de alta resolución deberían manejar los eventos de tableta, ya que pueden producirse con mayor frecuencia, lo que supone una ventaja para un dibujo suave y preciso. Si se rechazan los eventos de la tableta, se pueden comprimir los eventos sintéticos del ratón para mayor eficacia.
Tenga en cuenta que pulsar el botón del lápiz óptico mientras éste pasa por encima de la tableta generará una pulsación de botón en algunos tipos de tabletas, mientras que en otros tipos será necesario presionar el lápiz óptico contra la superficie de la tableta para registrar la pulsación simultánea del botón del lápiz óptico.
Notas para usuarios de X11
Si la tableta está configurada en xorg.conf para usar el controlador Wacom, habrá "dispositivos" XInput separados para el stylus, el borrador, y (opcionalmente) el cursor y el touchpad. Qt los reconoce por sus nombres. De lo contrario, si la tableta está configurada para utilizar el controlador evdev, sólo habrá un dispositivo y las aplicaciones pueden no ser capaces de distinguir el lápiz óptico de la goma de borrar.
Notas para usuarios de Windows
La compatibilidad con tabletas requiere actualmente la instalación del controlador WACOM para Windows que proporciona la DLL wintab32.dll. Está contenido en paquetes más antiguos, por ejemplo pentablet_5.3.5-3.exe.
Documentación de funciones
QTabletEvent::QTabletEvent(QEvent::Type type, const QPointingDevice *dev, const QPointF &pos, const QPointF &globalPos, qreal pressure, float xTilt, float yTilt, float tangentialPressure, qreal rotation, float z, Qt::KeyboardModifiers keyState, Qt::MouseButton button, Qt::MouseButtons buttons)
Construye un evento de tableta del tipo type.
El parámetro pos indica en qué parte del widget se ha producido el evento; globalPos es la posición correspondiente en coordenadas absolutas.
pressure da la presión ejercida sobre el dispositivo dev.
xTilt y yTilt dan el grado de inclinación del dispositivo respecto a los ejes x e y respectivamente.
keyState especifica qué modificadores de teclado se pulsan (por ejemplo, Ctrl).
El parámetro z da la coordenada Z del dispositivo en la tableta; normalmente viene dada por la rueda de un ratón 4D. Si el dispositivo no soporta un eje Z (es decir, QPointingDevice::capabilities() no incluye ZPosition), pasa 0 aquí.
El parámetro tangentialPressure da el valor de la rueda de presión tangencial de un aerógrafo. Si el dispositivo no soporta presión tangencial (es decir, QPointingDevice::capabilities() no incluye TangentialPressure), pase 0 aquí.
rotation da la rotación del dispositivo en grados. Los ratones 4D, el Wacom Art Pen y el Apple Pencil admiten la rotación. Si el dispositivo no admite la rotación (es decir, QPointingDevice::capabilities() no incluye Rotation), pasa 0 aquí.
El button que causó el evento se da como un valor del enum Qt::MouseButton. Si el evento type no es TabletPress o TabletRelease, el botón apropiado para este evento es Qt::NoButton.
buttons es el estado de todos los botones en el momento del evento.
Véase también pos(), globalPos(), device(), pressure(), xTilt(), yTilt(), uniqueId(), rotation(), tangentialPressure(), y z().
qreal QTabletEvent::pressure() const
Devuelve la presión para el dispositivo. 0.0 indica que el lápiz óptico no está en la tableta, 1.0 indica la cantidad máxima de presión para el lápiz óptico.
Véase también tangentialPressure().
qreal QTabletEvent::rotation() const
Devuelve la rotación de la herramienta actual en grados, donde cero significa que la punta del lápiz está apuntando hacia la parte superior de la tableta, un valor positivo significa que está girada hacia la derecha y un valor negativo significa que está girada hacia la izquierda. Esto puede venir dado por un ratón 4D o un lápiz óptico con capacidad de rotación (como el Wacom Art Pen o el Apple Pencil). Si el dispositivo no soporta la rotación, este valor es siempre 0.0.
qreal QTabletEvent::tangentialPressure() const
Devuelve la presión tangencial para el dispositivo. Esto es típicamente dado por una rueda de dedo en una herramienta de aerógrafo. El rango es de -1.0 a 1.0. 0.0 indica una posición neutral. Los aerógrafos actuales sólo pueden moverse en la dirección positiva desde la posición neutral. Si el aparato no admite presión tangencial, este valor es siempre 0,0.
Nota: El valor se almacena como un flotador de precisión simple.
Véase también pressure().
qreal QTabletEvent::xTilt() const
Devuelve el ángulo entre el dispositivo (un lápiz, por ejemplo) y la perpendicular en la dirección del eje x. Los valores positivos están hacia la derecha física de la tableta. El ángulo está en el rango de -60 a +60 grados.

Nota: El valor se almacena como un flotante de precisión simple.
Véase también yTilt().
qreal QTabletEvent::yTilt() const
Devuelve el ángulo entre el dispositivo (un bolígrafo, por ejemplo) y la perpendicular en la dirección del eje y. Los valores positivos son hacia la parte inferior de la tableta. El ángulo está dentro del rango de -60 a +60 grados.
Nota: El valor se almacena como un flotante de precisión simple.
Véase también xTilt().
qreal QTabletEvent::z() const
Devuelve la posición z del dispositivo. Normalmente está representada por la rueda de un ratón 4D. Si el dispositivo no soporta un eje Z, este valor es siempre cero. No es lo mismo que la presión.
Nota: El valor se almacena como un flotador de precisión simple.
Véase también pressure().
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.