QVirtualKeyboardTrace Class
Trace est un modèle de données dédié aux données d'entrée tactiles. En savoir plus...
| En-tête : | #include <QVirtualKeyboardTrace> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS VirtualKeyboard) target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard) |
| qmake : | QT += virtualkeyboard |
| Depuis : | QtQuick.VirtualKeyboard 2.0 |
| En QML : | Trace |
| Hérite de : | QObject |
Propriétés
Fonctions publiques
| int | addPoint(const QPointF &point) |
| QVariantList | channelData(const QString &channel, int pos = 0, int count = -1) const |
| QStringList | channels() const |
| bool | isCanceled() const |
| bool | isFinal() const |
| int | length() const |
| qreal | opacity() const |
| QVariantList | points(int pos = 0, int count = -1) const |
| void | setCanceled(bool canceled) |
| void | setChannelData(const QString &channel, int index, const QVariant &data) |
| void | setChannels(const QStringList &channels) |
| void | setFinal(bool final) |
| void | setOpacity(qreal opacity) |
| void | setTraceId(int id) |
(since 6.1) void | startHideTimer(int delayMs) |
| int | traceId() const |
Signaux
| void | canceledChanged(bool isCanceled) |
| void | channelsChanged() |
| void | finalChanged(bool isFinal) |
| void | lengthChanged(int length) |
| void | opacityChanged(qreal opacity) |
| void | traceIdChanged(int traceId) |
Description détaillée
Trace fournit le modèle de données pour les coordonnées et autres données facultatives associées à un trait unique.
Voici un cas d’utilisation typique de l’objet trace :
- TraceInputArea ou un autre périphérique d'entrée déclenche l'événement « trace » en appelant la méthode ` InputEngine.traceBegin()`.
- Si la méthode de saisie actuelle accepte l’événement, elle crée un objet trace et configure les canaux de données requis (le cas échéant).
- TraceInputArea collecte les données pour l’objet Trace.
- TraceInputArea Elle appelle la méthode ` InputEngine.traceEnd()` pour terminer la trace et renvoie l'objet `Trace` à la méthode d'entrée.
- La méthode d’entrée traite les données et supprime l’objet lorsqu’il n’est plus nécessaire.
Les données de coordonnées sont récupérées à l’aide de la fonction ` points()`.
Outre les données de coordonnées, il est possible d’associer un canal de données arbitraire à chaque point de données.
Les canaux de données doivent être définis avant l’ajout des points. Les canaux de données pris en charge par la méthode ` TraceInputArea ` sont répertoriés ci-dessous :
"t"Collecte l’heure de chaque point de données. L’heure correspond au nombre de millisecondes écoulées depuis le 01/01/1970 :
Par exemple, pour configurer l’objet afin qu’il collecte l’heure de chaque point :
QVirtualKeyboardTrace *trace = new QVirtualKeyboardTrace(this);
trace->setChannels(QStringList() << "t");Les données collectées sont accessibles via la fonction ` channelData()` :
QVariantList timeData = trace->channelData("t");Les objets `QVirtualKeyboardTrace` appartiennent à leur créateur, qui est, dans le cas normal, la méthode de saisie. Cela signifie que les objets sont créés dans la méthode ` InputMethod.traceBegin()` (QML).
Par définition, l’objet de trace peut être détruit au plus tôt dans la méthode ` InputMethod.traceEnd()` (QML).
Documentation des propriétés
canceled : bool
Détermine si l'QVirtualKeyboardTrace est annulée.
Les données d'entrée provenant des traces dont la propriété « canceled » est définie sur «true» ne doivent pas être traitées.
Fonctions d'accès :
| bool | isCanceled() const |
| void | setCanceled(bool canceled) |
Signal de notification :
| void | canceledChanged(bool isCanceled) |
channels : QStringList
Liste des canaux de données dans QQTrace.
Cette propriété doit être initialisée avant l'ajout des données.
Fonctions d'accès :
| QStringList | channels() const |
| void | setChannels(const QStringList &channels) |
Signal de notification :
| void | channelsChanged() |
final : bool
Détermine si l'QVirtualKeyboardTrace e peut accepter davantage de données. Si la valeur est « true », aucune autre donnée n'est acceptée.
Fonctions d'accès :
| bool | isFinal() const |
| void | setFinal(bool final) |
Signal de notification :
| void | finalChanged(bool isFinal) |
[read-only] length : int
Cette propriété contient le nombre de points dans l'QVirtualKeyboardTrace.
Fonctions d'accès :
| int | length() const |
Signal de notification :
| void | lengthChanged(int length) |
opacity : qreal
Cette propriété définit le degré d'opacité de l'QVirtualKeyboardTrace.
Une valeur plus faible rend la trace plus transparente : « 0.0 » est entièrement transparente, tandis que « 1.0 » est entièrement opaque.
Cette propriété est utile pour rendre les anciennes traces plus transparentes à mesure que de nouvelles sont ajoutées.
Fonctions d'accès :
| qreal | opacity() const |
| void | setOpacity(qreal opacity) |
Signal de notification :
| void | opacityChanged(qreal opacity) |
traceId : int
Identifiant unique de cette page QVirtualKeyboardTrace.
Fonctions d'accès :
| int | traceId() const |
| void | setTraceId(int id) |
Signal de notification :
| void | traceIdChanged(int traceId) |
Documentation des fonctions membres
[invokable] int QVirtualKeyboardTrace::addPoint(const QPointF &point)
Ajoute un « point » à l’ QVirtualKeyboardTrace.
La méthode renvoie l’index du point ajouté, ou -1 si le point ne peut pas être ajouté (c’est-à-dire si la condition final est vraie).
Remarque : l’index renvoyé est nécessaire pour associer des données supplémentaires au point à l’aide de la méthode setChannelData().
Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.
[invokable] QVariantList QVirtualKeyboardTrace::channelData(const QString &channel, int pos = 0, int count = -1) const
Renvoie les données à partir de l'channel spécifiée. Si aucun autre paramètre n'est fourni, la méthode renvoie toutes les données.
Si le paramètre ` pos ` est fourni, la méthode renvoie les données à partir de la position indiquée. Le paramètre ` count ` limite le nombre d’éléments renvoyés.
Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.
Voir également setChannelData().
[invokable] QVariantList QVirtualKeyboardTrace::points(int pos = 0, int count = -1) const
Renvoie une liste de points. Si aucun paramètre n'est fourni, la méthode renvoie toutes les données.
Si le paramètre ` pos ` est fourni, la méthode renvoie les points à partir de la position indiquée. Le paramètre ` count ` limite le nombre de points renvoyés.
La liste renvoyée contient des types QPointF.
Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.
[invokable] void QVirtualKeyboardTrace::setChannelData(const QString &channel, int index, const QVariant &data)
Définit la valeur « data » pour le point situé à l'adresse index dans les données fournies channel.
Si cette méthode n’est pas appelée pour chaque point de données, les données du canal seront complétées par des valeurs vides. Cependant, les données ne peuvent pas être ajoutées à un index arbitraire ; elles doivent donc être ajoutées de manière synchrone avec les données des points.
Remarque : cette fonction peut être invoquée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.
Voir également channelData().
[invokable, since 6.1] void QVirtualKeyboardTrace::startHideTimer(int delayMs)
Lance un minuteur pour ramener l'opacité à zéro après ` delayMs`. Si la fonction est appelée à nouveau avant ` delayMs`, le minuteur est relancé.
Grâce à cette fonction, la méthode d’entrée peut masquer la trace à l’écran avant de détruire l’objet trace, par exemple pour indiquer que la trace a été traitée.
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 Qt 6.1.
© 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.