Sur cette page

QVirtualKeyboardInputEngine Class

La classe ` InputEngine ` fournit un moteur de saisie prenant en charge l'intégration avec C++ et QML. En savoir plus...

En-tête : #include <QVirtualKeyboardInputEngine>
CMake : find_package(Qt6 REQUIRED COMPONENTS VirtualKeyboard)
target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard)
qmake : QT += virtualkeyboard
En QML : InputEngine
Hérite de : QObject

Types publics

enum class InputMode { Latin, Numeric, Dialable, Pinyin, Cangjie, …, HiraganaFlick }
enum class PatternRecognitionMode { None, PatternRecognitionDisabled, Handwriting, HandwritingRecoginition }
enum class ReselectFlag { WordBeforeCursor, WordAfterCursor, WordAtCursor }
flags ReselectFlags
enum class TextCase { Lower, Upper }

Propriétés

Fonctions publiques

Qt::Key activeKey() const
QVirtualKeyboardInputContext *inputContext() const
QVirtualKeyboardAbstractInputMethod *inputMethod() const
QVirtualKeyboardInputEngine::InputMode inputMode() const
QList<int> inputModes() const
QList<int> patternRecognitionModes() const
Qt::Key previousKey() const
(since QtQuick.VirtualKeyboard 2.0) bool reselect(int cursorPosition, const QVirtualKeyboardInputEngine::ReselectFlags &reselectFlags)
void setInputMethod(QVirtualKeyboardAbstractInputMethod *inputMethod)
void setInputMode(QVirtualKeyboardInputEngine::InputMode inputMode)
(since QtQuick.VirtualKeyboard 2.0) QVirtualKeyboardTrace *traceBegin(int traceId, QVirtualKeyboardInputEngine::PatternRecognitionMode patternRecognitionMode, const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo)
bool traceEnd(QVirtualKeyboardTrace *trace)
void virtualKeyCancel()
bool virtualKeyClick(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
bool virtualKeyPress(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool repeat)
bool virtualKeyRelease(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)
QVirtualKeyboardSelectionListModel *wordCandidateListModel() const
bool wordCandidateListVisibleHint() const

Signaux

void activeKeyChanged(Qt::Key key)
void inputMethodChanged()
void inputMethodReset()
void inputMethodUpdate()
void inputModeChanged()
void inputModesChanged()
(since QtQuick.VirtualKeyboard 2.0) void patternRecognitionModesChanged()
void previousKeyChanged(Qt::Key key)
void virtualKeyClicked(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool isAutoRepeat)
void wordCandidateListModelChanged()
void wordCandidateListVisibleHintChanged()

Description détaillée

Le moteur de saisie est chargé d'acheminer les événements de saisie vers les méthodes de saisie. La logique de saisie proprement dite est mise en œuvre par les méthodes de saisie.

Le moteur de saisie inclut également la méthode de saisie par défaut, qui se charge du traitement par défaut si la méthode de saisie active ne gère pas l'événement.

Documentation sur les types de membres

enum class QVirtualKeyboardInputEngine::InputMode

Cette énumération spécifie le mode de saisie de la méthode de saisie.

ConstanteValeurDescription
QVirtualKeyboardInputEngine::InputMode::Latin0Mode de saisie par défaut pour le texte en caractères latins.
QVirtualKeyboardInputEngine::InputMode::Numeric1Seule la saisie numérique est autorisée.
QVirtualKeyboardInputEngine::InputMode::Dialable2Seule la saisie par numérotation est autorisée.
QVirtualKeyboardInputEngine::InputMode::Pinyin3Mode de saisie Pinyin pour le chinois.
QVirtualKeyboardInputEngine::InputMode::Cangjie4Mode de saisie Cangjie pour le chinois.
QVirtualKeyboardInputEngine::InputMode::Zhuyin5Mode de saisie Zhuyin pour le chinois.
QVirtualKeyboardInputEngine::InputMode::Hangul6Mode de saisie Hangul pour le coréen.
QVirtualKeyboardInputEngine::InputMode::Hiragana7Mode de saisie « Hiragana » pour le japonais.
QVirtualKeyboardInputEngine::InputMode::Katakana8Mode de saisie Katakana pour le japonais.
QVirtualKeyboardInputEngine::InputMode::FullwidthLatin9Mode de saisie en caractères latins pleine largeur pour les langues d'Asie de l'Est.
QVirtualKeyboardInputEngine::InputMode::Greek10Mode de saisie grec.
QVirtualKeyboardInputEngine::InputMode::Cyrillic11Mode de saisie cyrillique.
QVirtualKeyboardInputEngine::InputMode::Arabic12Mode de saisie arabe.
QVirtualKeyboardInputEngine::InputMode::Hebrew13Mode de saisie en hébreu.
QVirtualKeyboardInputEngine::InputMode::ChineseHandwriting14Mode de saisie par écriture manuscrite en chinois.
QVirtualKeyboardInputEngine::InputMode::JapaneseHandwriting15Mode de saisie par écriture manuscrite japonaise.
QVirtualKeyboardInputEngine::InputMode::KoreanHandwriting16Mode de saisie manuscrite coréenne.
QVirtualKeyboardInputEngine::InputMode::Thai17Mode de saisie thaï.
QVirtualKeyboardInputEngine::InputMode::Stroke18Mode de saisie par traits pour le chinois.
QVirtualKeyboardInputEngine::InputMode::Romaji19Mode de saisie en romaji pour le japonais.
QVirtualKeyboardInputEngine::InputMode::HiraganaFlick20Mode de saisie par glissement pour le japonais.

enum class QVirtualKeyboardInputEngine::PatternRecognitionMode

Cette énumération définit le mode de saisie de la méthode de saisie.

ConstanteValeurDescription
QVirtualKeyboardInputEngine::PatternRecognitionMode::None0La reconnaissance de motifs n'est pas disponible.
QVirtualKeyboardInputEngine::PatternRecognitionMode::PatternRecognitionDisabledNoneobsolete Utilisez PatternRecognitionMode::None
QVirtualKeyboardInputEngine::PatternRecognitionMode::Handwriting1Mode de reconnaissance des motifs pour la reconnaissance de l'écriture manuscrite.
QVirtualKeyboardInputEngine::PatternRecognitionMode::HandwritingRecoginitionHandwritingobsolete Utilisez PatternRecognitionMode::Handwriting

enum class QVirtualKeyboardInputEngine::ReselectFlag
flags QVirtualKeyboardInputEngine::ReselectFlags

Cette énumération définit les règles de resélection des mots.

ConstanteValeurDescription
QVirtualKeyboardInputEngine::ReselectFlag::WordBeforeCursor0x1Active le mot situé avant le curseur. Lorsque cet indicateur est utilisé seul, le mot doit se terminer exactement au niveau du curseur.
QVirtualKeyboardInputEngine::ReselectFlag::WordAfterCursor0x2Activer le mot suivant le curseur. Lorsque cet indicateur est utilisé seul, le mot doit commencer exactement au niveau du curseur.
QVirtualKeyboardInputEngine::ReselectFlag::WordAtCursorWordBeforeCursor | WordAfterCursorActiver le mot situé au niveau du curseur. Cet indicateur est une combinaison des indicateurs ci-dessus, à l'exception que le mot ne peut ni commencer ni se terminer au niveau du curseur.

Le type ReselectFlags est un typedef pour QFlags<ReselectFlag>. Il stocke une combinaison OR de valeurs ReselectFlag.

enum class QVirtualKeyboardInputEngine::TextCase

Cette énumération définit le niveau de casse du texte pour la méthode de saisie.

ConstanteValeurDescription
QVirtualKeyboardInputEngine::TextCase::Lower0Texte en minuscules.
QVirtualKeyboardInputEngine::TextCase::Upper1Texte en majuscules.

Documentation sur les propriétés

[read-only] activeKey : Qt::Key

Cette propriété contient la touche enfoncée.

Touche actuellement enfoncée.

Fonctions d'accès :

Qt::Key activeKey() const

Signal de notification :

void activeKeyChanged(Qt::Key key)

inputMethod : QVirtualKeyboardAbstractInputMethod*

Cette propriété contient la méthode de saisie active.

Utilisez cette propriété pour activer la méthode de saisie ou pour surveiller les changements de méthode de saisie active.

Fonctions d'accès :

QVirtualKeyboardAbstractInputMethod *inputMethod() const
void setInputMethod(QVirtualKeyboardAbstractInputMethod *inputMethod)

Signal de notification :

inputMode : InputMode

Cette propriété contient le mode de saisie actuel.

Utilisez cette propriété pour obtenir ou définir le mode de saisie actuel. L'InputEngine::inputModes fournit la liste des modes de saisie valides pour la méthode de saisie et les paramètres régionaux actuels.

Fonctions d'accès :

QVirtualKeyboardInputEngine::InputMode inputMode() const
void setInputMode(QVirtualKeyboardInputEngine::InputMode inputMode)

Signal de notification :

[read-only] inputModes : QList<int>

Cette propriété contient les modes de saisie disponibles pour la méthode de saisie active.

La liste des modes de saisie disponibles dépend de la méthode de saisie et des paramètres régionaux. Cette propriété est mise à jour lorsque l'une de ces dépendances change.

Fonctions d’accès :

QList<int> inputModes() const

Signal de notification :

[read-only, since QtQuick.VirtualKeyboard 2.0] patternRecognitionModes : QList<int>

Cette propriété contient la liste des modes de reconnaissance de formes disponibles.

La liste des modes de reconnaissance de motifs disponibles.

Cette énumération a été introduite dans QtQuick.VirtualKeyboard 2.0.

Fonctions d’accès :

QList<int> patternRecognitionModes() const

Signal de notification :

[read-only] previousKey : Qt::Key

Cette propriété contient la touche précédemment enfoncée.

Touche précédemment enfoncée.

Fonctions d'accès :

Qt::Key previousKey() const

Signal de notification :

void previousKeyChanged(Qt::Key key)

[read-only] wordCandidateListModel : QVirtualKeyboardSelectionListModel*

Modèle de liste pour la liste des candidats de mots.

Utilisez cette propriété pour accéder au modèle de liste correspondant à la liste des mots candidats.

Fonctions d'accès :

QVirtualKeyboardSelectionListModel *wordCandidateListModel() const

Signal de notification :

void wordCandidateListModelChanged()

[read-only] wordCandidateListVisibleHint : bool

Indice visible pour la liste des mots candidats.

Utilisez cette propriété pour vérifier si la liste des suggestions de mots doit être visible dans l'interface utilisateur.

Fonctions d'accès :

bool wordCandidateListVisibleHint() const

Signal de notification :

void wordCandidateListVisibleHintChanged()

Documentation des fonctions membres

Qt::Key QVirtualKeyboardInputEngine::activeKey() const

Renvoie la clé actuellement active, ou ` Qt::Key_unknown ` si aucune clé n'est active.

Remarque : fonctiongetter pour la propriété activeKey.

[signal] void QVirtualKeyboardInputEngine::activeKeyChanged(Qt::Key key)

Indique que la propriété « key » active a changé.

Remarque : signalde notification pour la propriété « activeKey ».

QVirtualKeyboardInputContext *QVirtualKeyboardInputEngine::inputContext() const

Renvoie l'instance ` InputContext ` associée au moteur d'entrée.

QVirtualKeyboardAbstractInputMethod *QVirtualKeyboardInputEngine::inputMethod() const

Renvoie la méthode de saisie active.

Remarque : fonctiongetter pour la propriété inputMethod.

Voir aussi setInputMethod().

[signal] void QVirtualKeyboardInputEngine::inputMethodChanged()

Indique que la méthode de saisie a changé.

Remarque : signalde notification pour la propriété inputMethod.

[signal] void QVirtualKeyboardInputEngine::inputMethodReset()

Émis lorsque la méthode de saisie doit être réinitialisée.

Remarque : ce signal est automatiquement connecté aux méthodes QVirtualKeyboardAbstractInputMethod::reset() et InputMethod::reset() lorsque la méthode de saisie est activée.

[signal] void QVirtualKeyboardInputEngine::inputMethodUpdate()

Remarque : ce signal est automatiquement connecté à QVirtualKeyboardAbstractInputMethod::update() et InputMethod::update() lorsque la méthode de saisie est activée.

[signal] void QVirtualKeyboardInputEngine::inputModeChanged()

Indique que le mode de saisie a changé.

Remarque : signalde notification pour la propriété inputMode.

QList<int> QVirtualKeyboardInputEngine::inputModes() const

Renvoie la liste des modes de saisie disponibles.

Remarque : fonctionde lecture pour la propriété inputModes.

[signal] void QVirtualKeyboardInputEngine::inputModesChanged()

Indique que les modes de saisie disponibles ont changé.

Remarque : signalde notification pour la propriété inputModes.

QList<int> QVirtualKeyboardInputEngine::patternRecognitionModes() const

Renvoie la liste des modes de reconnaissance de formes pris en charge.

Remarque : fonctiongetter pour la propriété patternRecognitionModes.

[signal, since QtQuick.VirtualKeyboard 2.0] void QVirtualKeyboardInputEngine::patternRecognitionModesChanged()

Indique que les modes de reconnaissance de motifs disponibles ont changé.

Remarque : signalde notification pour la propriété patternRecognitionModes.

Cette fonction a été introduite dans QtQuick.VirtualKeyboard 2.0.

Qt::Key QVirtualKeyboardInputEngine::previousKey() const

Renvoie la clé précédemment active, ou ` Qt::Key_unknown ` si aucune clé n'était active.

Remarque : fonction de lecture (getter ) pour la propriété previousKey.

[signal] void QVirtualKeyboardInputEngine::previousKeyChanged(Qt::Key key)

Indique que la valeur de la propriété « key » a changé.

Remarque : signalde notification pour la propriété « previousKey ».

[invokable, since QtQuick.VirtualKeyboard 2.0] bool QVirtualKeyboardInputEngine::reselect(int cursorPosition, const QVirtualKeyboardInputEngine::ReselectFlags &reselectFlags)

Cette fonction tente de resélectionner un mot situé à l'cursorPosition. Les paramètres reselectFlags définissent les règles de sélection du mot par rapport à la position du curseur.

La fonction renvoie true si le mot a été resélectionné avec succès.

Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.

Cette fonction a été introduite dans QtQuick.VirtualKeyboard 2.0.

void QVirtualKeyboardInputEngine::setInputMethod(QVirtualKeyboardAbstractInputMethod *inputMethod)

Définit « inputMethod » comme méthode de saisie active.

Remarque : fonctionde définition de la propriété inputMethod.

Voir aussi inputMethod().

[invokable, since QtQuick.VirtualKeyboard 2.0] QVirtualKeyboardTrace *QVirtualKeyboardInputEngine::traceBegin(int traceId, QVirtualKeyboardInputEngine::PatternRecognitionMode patternRecognitionMode, const QVariantMap &traceCaptureDeviceInfo, const QVariantMap &traceScreenInfo)

Lance une interaction de trace avec le moteur d'entrée.

La trace est identifiée de manière unique par l'traceId. Le moteur de saisie attribuera cet identifiant à l'objet QVirtualKeyboardTrace si la méthode de saisie accepte l'événement.

L’ patternRecognitionMode spécifie le mode de reconnaissance utilisé pour le motif.

Si la méthode de saisie actuelle accepte l’événement, elle renvoie un objet ` QVirtualKeyboardTrace ` associé à cette interaction. Si la méthode de saisie rejette l’événement, elle renvoie la valeur `NULL`.

L’ traceCaptureDeviceInfo fournit des informations sur le périphérique source et l’ traceScreenInfo fournit des informations sur le contexte d’écran.

Par définition, l’objet ` QVirtualKeyboardTrace ` reste valide jusqu’à ce que la méthode ` traceEnd()` soit appelée.

L'interaction de traçage est terminée par l'appel de la méthode traceEnd().

Remarque : cette fonction peut être invoquée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.

Cette fonction a été introduite dans QtQuick.VirtualKeyboard 2.0.

[invokable] bool QVirtualKeyboardInputEngine::traceEnd(QVirtualKeyboardTrace *trace)

Mette fin à l'interaction de trace avec le moteur d'entrée.

L'objet ` trace ` peut être supprimé à tout moment après l'appel de cette fonction.

La fonction renvoie « true » si l'interaction de trace a été acceptée (c'est-à-dire que les événements tactiles ne doivent pas être utilisés à d'autres fins).

Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.

[invokable] void QVirtualKeyboardInputEngine::virtualKeyCancel()

Rétablit l'état de la touche active sans déclencher d'événement de touche. Cette méthode est utile lorsque l'utilisateur annule la touche actuelle et que l'état de la touche doit être rétabli.

Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.

[invokable] bool QVirtualKeyboardInputEngine::virtualKeyClick(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)

Déclenche un événement de clic de touche pour les éléments key, text et modifiers indiqués. Renvoie true si l'événement de touche a été accepté par le moteur de saisie.

Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.

[signal] void QVirtualKeyboardInputEngine::virtualKeyClicked(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool isAutoRepeat)

Indique qu'on a cliqué sur l'key virtuelle avec les paramètres text et modifiers indiqués. Le paramètre isAutoRepeat indique si l'événement est automatiquement répété tant que la touche reste enfoncée. Ce signal est émis une fois que la méthode de saisie a traité l'événement de touche.

[invokable] bool QVirtualKeyboardInputEngine::virtualKeyPress(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers, bool repeat)

Appelée par la couche clavier pour indiquer qu’ key a été enfoncée, avec les paramètres text et modifiers fournis.

L'key est définie comme une touche active (touche enfoncée). L'événement de touche proprement dit est déclenché lorsque la touche est relâchée par la méthode virtualKeyRelease(). L'événement de pression de touche peut être ignoré en appelant virtualKeyCancel().

La pression sur la touche déclenche également le minuteur de répétition des touches si repeat est true.

Renvoie true si la touche a été acceptée par ce moteur d’entrée.

Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.

Voir également virtualKeyCancel() et virtualKeyRelease().

[invokable] bool QVirtualKeyboardInputEngine::virtualKeyRelease(Qt::Key key, const QString &text, Qt::KeyboardModifiers modifiers)

Libère la touche à l’adresse key. La méthode déclenche un événement de touche pour la méthode de saisie si cet événement n’a pas été généré par une minuterie récurrente. Les paramètres ` text ` et ` modifiers ` sont transmis à la méthode de saisie.

Renvoie true si la touche a été acceptée par le moteur de saisie.

Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.

© 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.