QKeyEvent Class
La clase QKeyEvent describe un evento de tecla. Más...
| Cabecera: | #include <QKeyEvent> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
| Hereda: | QInputEvent |
- Lista de todos los miembros, incluyendo los heredados
- QKeyEvent es parte de Clases de Eventos.
Funciones Públicas
| QKeyEvent(QEvent::Type type, int key, Qt::KeyboardModifiers modifiers, const QString &text = QString(), bool autorep = false, quint16 count = 1) | |
| QKeyEvent(QEvent::Type type, int key, Qt::KeyboardModifiers modifiers, quint32 nativeScanCode, quint32 nativeVirtualKey, quint32 nativeModifiers, const QString &text = QString(), bool autorep = false, quint16 count = 1, const QInputDevice *device = QInputDevice::primaryKeyboard()) | |
| int | count() const |
| bool | isAutoRepeat() const |
| int | key() const |
(since 6.0) QKeyCombination | keyCombination() const |
| bool | matches(QKeySequence::StandardKey key) const |
| Qt::KeyboardModifiers | modifiers() const |
| quint32 | nativeModifiers() const |
| quint32 | nativeScanCode() const |
| quint32 | nativeVirtualKey() const |
| QString | text() const |
Descripción Detallada
Los eventos de tecla se envían al widget con foco de entrada de teclado cuando se pulsan o sueltan teclas.
Un evento de tecla contiene una bandera especial de aceptación que indica si el receptor manejará el evento de tecla. Esta bandera está activada por defecto para QEvent::KeyPress y QEvent::KeyRelease, por lo que no es necesario llamar a accept() cuando se actúa sobre un evento de tecla. Para QEvent::ShortcutOverride el receptor necesita aceptar explícitamente el evento para activar la anulación. La llamada a ignore() en un evento de tecla lo propagará al widget padre. El evento se propaga por la cadena de widgets padre hasta que un widget lo acepta o un filtro de eventos lo consume.
La función QWidget::setEnabled() puede utilizarse para activar o desactivar los eventos de ratón y teclado de un widget.
Los manejadores de eventos QWidget::keyPressEvent(), QWidget::keyReleaseEvent(), QGraphicsItem::keyPressEvent() y QGraphicsItem::keyReleaseEvent() reciben eventos de teclado.
Véase también QFocusEvent y QWidget::grabKeyboard().
Documentación de las funciones miembro
QKeyEvent::QKeyEvent(QEvent::Type type, int key, Qt::KeyboardModifiers modifiers, const QString &text = QString(), bool autorep = false, quint16 count = 1)
Construye un objeto de evento clave.
El parámetro type debe ser QEvent::KeyPress, QEvent::KeyRelease, o QEvent::ShortcutOverride.
Int key es el código de Qt::Key que el bucle de eventos debe escuchar. Si key es 0, el evento no es el resultado de una tecla conocida; por ejemplo, puede ser el resultado de una secuencia de composición o una macro de teclado. El modifiers contiene los modificadores de teclado, y el text dado es el texto Unicode que la tecla generó. Si autorep es verdadero, isAutoRepeat() será verdadero. count es el número de teclas implicadas en el evento.
QKeyEvent::QKeyEvent(QEvent::Type type, int key, Qt::KeyboardModifiers modifiers, quint32 nativeScanCode, quint32 nativeVirtualKey, quint32 nativeModifiers, const QString &text = QString(), bool autorep = false, quint16 count = 1, const QInputDevice *device = QInputDevice::primaryKeyboard())
Construye un objeto de evento clave.
El parámetro type debe ser QEvent::KeyPress, QEvent::KeyRelease, o QEvent::ShortcutOverride.
Int key es el código de Qt::Key que el bucle de eventos debe escuchar. Si key es 0, el evento no es el resultado de una tecla conocida; por ejemplo, puede ser el resultado de una secuencia de composición o una macro de teclado. El modifiers contiene los modificadores de teclado, y el text dado es el texto Unicode que la tecla generó. Si autorep es verdadero, isAutoRepeat() será verdadero. count es el número de teclas implicadas en el evento.
Además de los datos normales del evento de clave, también contiene nativeScanCode, nativeVirtualKey y nativeModifiers. Estos datos extra son utilizados por el sistema de atajos, para determinar qué atajos activar.
int QKeyEvent::count() const
Devuelve el número de claves involucradas en este evento. Si text() no está vacío, es simplemente la longitud de la cadena.
Véase también Qt::WA_KeyCompression.
bool QKeyEvent::isAutoRepeat() const
Devuelve true si este evento proviene de una tecla de repetición automática; devuelve false si proviene de una pulsación inicial de tecla.
Tenga en cuenta que si el evento es un evento comprimido de varias teclas que se debe en parte a la autorrepetición, esta función podría devolver verdadero o falso indeterminadamente.
int QKeyEvent::key() const
Devuelve el código de la tecla que se ha pulsado o soltado.
Consulte Qt::Key para ver la lista de códigos de teclado. Estos códigos son independientes del sistema de ventanas subyacente. Tenga en cuenta que esta función no distingue entre mayúsculas y minúsculas, utilice la función text() (que devuelve el texto Unicode que generó la tecla) para este propósito.
Un valor de 0 o Qt::Key_unknown significa que el evento no es el resultado de una tecla conocida; por ejemplo, puede ser el resultado de una secuencia de composición, una macro de teclado o deberse a la compresión de eventos de tecla.
Véase también Qt::WA_KeyCompression.
[since 6.0] QKeyCombination QKeyEvent::keyCombination() const
Devuelve un objeto QKeyCombination que contiene tanto el key() como el modifiers() transportados por este evento.
Esta función se introdujo en Qt 6.0.
bool QKeyEvent::matches(QKeySequence::StandardKey key) const
Devuelve true si el evento clave coincide con la norma dada key; en caso contrario devuelve false.
Qt::KeyboardModifiers QKeyEvent::modifiers() const
Devuelve las banderas modificadoras del teclado que existían inmediatamente después de que se produjera el evento.
Advertencia: No siempre se puede confiar en esta función. El usuario puede confundirla pulsando simultáneamente las dos teclas Shift y soltando una de ellas, por ejemplo.
Véase también QGuiApplication::keyboardModifiers().
quint32 QKeyEvent::nativeModifiers() const
Devuelve los modificadores nativos de un evento clave. Si el evento clave no contiene estos datos se devuelve 0.
Nota: Los modificadores nativos pueden ser 0, incluso si el evento clave contiene información extendida.
quint32 QKeyEvent::nativeScanCode() const
Devuelve el código de escaneo nativo del evento clave. Si el evento clave no contiene este dato se devuelve 0.
Nota: El código de escaneo nativo puede ser 0, incluso si el evento clave contiene información extendida.
quint32 QKeyEvent::nativeVirtualKey() const
Devuelve la clave virtual nativa, o key sym del evento clave. Si el evento clave no contiene estos datos se devuelve 0.
Nota: La clave virtual nativa puede ser 0, incluso si el evento clave contiene información extendida.
QString QKeyEvent::text() const
Devuelve el texto Unicode generado por esta clave.
El texto no se limita al rango imprimible de puntos de código Unicode, y puede incluir caracteres de control o caracteres de otras categorías Unicode, incluyendo QChar::Other_PrivateUse.
El texto también puede estar vacío, por ejemplo cuando se pulsan teclas modificadoras como Shift, Control, Alt y Meta (dependiendo de la plataforma). La función key() siempre devolverá un valor válido.
Véase también Qt::WA_KeyCompression.
© 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.