KeyEvent QML Type
Fournit des informations sur un événement clé. Plus d'informations...
| Import Statement: | import QtQuick |
Propriétés
- accepted : bool
- count : int
- isAutoRepeat : bool
- key : int
- modifiers : int
- nativeScanCode : quint32
- text : string
Méthodes
- bool matches(StandardKey matchKey)
Description détaillée
Par exemple, le texte suivant modifie la propriété state de l'élément lorsque la touche Enter est enfoncée :
Item { focus: true Keys.onPressed: (event)=> { if (event.key == Qt.Key_Enter) state = 'ShowDetails'; } }
Propriété Documentation
accepted : bool
La valeur "true" attribuée à accepted empêche la propagation de l'événement clé au parent de l'élément.
En règle générale, si l'élément agit sur l'événement clé, il doit être accepté afin que les éléments ancestraux ne réagissent pas également au même événement.
count : int [read-only]
Cette propriété contient le nombre de clés impliquées dans cet événement. Si KeyEvent::text n'est pas vide, il s'agit simplement de la longueur de la chaîne.
isAutoRepeat : bool [read-only]
Cette propriété indique si cet événement provient d'une clé à répétition automatique.
key : int [read-only]
Cette propriété contient le code de la touche qui a été enfoncée ou relâchée.
Voir Qt.Key pour la liste des codes de clavier. Ces codes sont indépendants du système de fenêtres sous-jacent. Notez que cette fonction ne fait pas la distinction entre les lettres majuscules et non majuscules ; utilisez la propriété text à cette fin.
Une valeur de 0 ou Qt.Key_Unknown signifie que l'événement n'est pas le résultat d'une touche connue ; par exemple, il peut être le résultat d'une séquence de composition, d'une macro clavier ou de la compression d'un événement clavier.
modifiers : int [read-only]
Cette propriété contient les drapeaux de modification du clavier qui existaient immédiatement avant l'événement.
Elle contient une combinaison bit à bit de valeurs numériques (comme dans Qt::KeyboardModifier) :
| Constante | Description |
|---|---|
Qt.NoModifier | Aucune touche de modification n'est enfoncée. |
Qt.ShiftModifier | Une touche Shift du clavier est enfoncée. |
Qt.ControlModifier | La touche Ctrl du clavier est enfoncée. |
Qt.AltModifier | Une touche Alt du clavier est enfoncée. |
Qt.MetaModifier | Une touche Meta du clavier est enfoncée. |
Qt.KeypadModifier | Une touche du clavier est enfoncée. |
Qt.GroupSwitchModifier | X11 uniquement. Une touche Mode_switch du clavier est enfoncée. |
Par exemple, pour réagir à une combinaison de touches Maj + Entrée :
Item { focus: true Keys.onPressed: (event)=> { if ((event.key == Qt.Key_Enter) && (event.modifiers & Qt.ShiftModifier)) doSomething(); } }
nativeScanCode : quint32 [read-only]
Cette propriété contient le code de balayage natif de la touche qui a été enfoncée. Elle est transmise telle quelle par QKeyEvent.
Voir également QKeyEvent::nativeScanCode().
text : string [read-only]
Cette propriété contient le texte Unicode généré par la touche. Le texte renvoyé peut être une chaîne vide dans les cas où des touches de modification, telles que Shift, Control, Alt et Meta, sont enfoncées ou relâchées. Dans ce cas, key contiendra une valeur valide.
Documentation de la méthode
bool matches(StandardKey matchKey)
Renvoie true si l'événement clé correspond à la norme donnée matchKey; sinon, renvoie false.
Item { focus: true Keys.onPressed: (event)=> { if (event.matches(StandardKey.Undo)) myModel.undo(); else if (event.matches(StandardKey.Redo)) myModel.redo(); } }
Voir également QKeySequence::StandardKey.
© 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.