QVirtualKeyboardTrace Class

Trace ist ein Datenmodell für Touch-Eingabedaten. Mehr...

Kopfzeile: #include <QVirtualKeyboardTrace>
CMake: find_package(Qt6 REQUIRED COMPONENTS VirtualKeyboard)
target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard)
qmake: QT += virtualkeyboard
Since: QtQuick.VirtualKeyboard 2.0
In QML: Trace
Vererbt: QObject

Eigenschaften

Öffentliche Funktionen

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 QtQuick.VirtualKeyboard.Styles 6.1) void startHideTimer(int delayMs)
int traceId() const

Signale

void canceledChanged(bool isCanceled)
void channelsChanged()
void finalChanged(bool isFinal)
void lengthChanged(int length)
void opacityChanged(qreal opacity)
void traceIdChanged(int traceId)

Detaillierte Beschreibung

Trace bietet das Datenmodell für Koordinatendaten und andere optionale Daten, die mit einem einzelnen Strich verbunden sind.

Ein typischer Anwendungsfall für das Trace-Objekt ist wie folgt:

  • TraceInputArea Der Benutzer oder ein anderes Eingabegerät initiiert das Trace-Ereignis durch den Aufruf der Methode InputEngine.traceBegin().
  • Wenn die aktuelle Eingabemethode das Ereignis annimmt, erstellt sie ein Trace-Objekt und konfiguriert die erforderlichen Datenkanäle (falls vorhanden).
  • TraceInputArea sammelt die Daten für das Trace-Objekt.
  • TraceInputArea ruft die Methode InputEngine.traceEnd() auf, um den Trace zu beenden und das Trace-Objekt an die Eingabemethode zurückzugeben.
  • Die Eingabemethode verarbeitet die Daten und verwirft das Objekt, wenn es nicht mehr benötigt wird.

Die Koordinatendaten werden mit der Funktion points() abgerufen.

Zusätzlich zu den koordinatenbasierten Daten ist es möglich, für jeden Datenpunkt einen beliebigen Datenkanal zu verwenden.

Die Datenkanäle müssen definiert werden, bevor die Punkte hinzugefügt werden. Die von TraceInputArea unterstützten Datenkanäle sind im Folgenden aufgeführt:

  • "t" Sammelt die Zeit für jeden Datenpunkt. Die Zeit ist die Anzahl der Millisekunden seit 1970/01/01:

Zum Beispiel, um das Objekt so zu konfigurieren, dass die Zeiten für jeden Punkt gesammelt werden:

QVirtualKeyboardTrace *trace = new QVirtualKeyboardTrace(this);
trace->setChannels(QStringList() << "t");

Die gesammelten Daten können mit der Funktion channelData() abgerufen werden:

QVariantList timeData = trace->channelData("t");

QVirtualKeyboardTrace-Objekte sind Eigentum ihres Erzeugers, der im Normalfall die Eingabemethode ist. Das bedeutet, dass die Objekte in der Methode InputMethod.traceBegin() (QML) erstellt werden.

Per Definition kann das Trace-Objekt frühestens in der Methode InputMethod.traceEnd() (QML) zerstört werden.

Dokumentation der Eigenschaften

canceled : bool

definiert, ob die QVirtualKeyboardTrace abgebrochen wird.

Die Eingangsdaten sollten nicht von den Traces verarbeitet werden, deren canceled Eigenschaft auf true gesetzt ist.

Zugriffsfunktionen:

bool isCanceled() const
void setCanceled(bool canceled)

Melder-Signal:

void canceledChanged(bool isCanceled)

channels : QStringList

Liste der Datenkanäle im QQTrace.

Diese Eigenschaft muss initialisiert werden, bevor die Daten hinzugefügt werden.

Zugriffsfunktionen:

QStringList channels() const
void setChannels(const QStringList &channels)

Melder-Signal:

void channelsChanged()

final : bool

legt fest, ob die QVirtualKeyboardTrace weitere Daten annehmen kann. Wenn der Wert true ist, werden keine weiteren Daten akzeptiert.

Zugriffsfunktionen:

bool isFinal() const
void setFinal(bool final)

Melder-Signal:

void finalChanged(bool isFinal)

[read-only] length : const int

Diese Eigenschaft enthält die Anzahl der Punkte in der QVirtualKeyboardTrace.

Zugriffsfunktionen:

int length() const

Benachrichtigungssignal:

void lengthChanged(int length)

opacity : qreal

Mit dieser Eigenschaft wird festgelegt, wie undurchsichtig die QVirtualKeyboardTrace ist.

Ein niedrigerer Wert führt zu einer transparenteren Kurve: 0.0 ist vollständig transparent, und 1.0 ist vollständig undurchsichtig.

Diese Eigenschaft ist nützlich, um ältere Spuren transparenter zu machen, wenn neue hinzugefügt werden.

Zugriffsfunktionen:

qreal opacity() const
void setOpacity(qreal opacity)

Benachrichtigungssignal:

void opacityChanged(qreal opacity)

traceId : int

eindeutige Kennung dieser QVirtualKeyboardTrace.

Zugriffsfunktionen:

int traceId() const
void setTraceId(int id)

Benachrichtigungssignal:

void traceIdChanged(int traceId)

Mitgliederfunktion Dokumentation

[invokable] int QVirtualKeyboardTrace::addPoint(const QPointF &point)

Fügt einen point zu QVirtualKeyboardTrace hinzu.

Die Methode gibt den Index des hinzugefügten Punktes zurück, oder -1, wenn die Punkte nicht hinzugefügt werden können (d. h. final ist wahr).

Hinweis: Der zurückgegebene Index wird benötigt, um dem Punkt mit der Methode setChannelData() zusätzliche Daten zuzuordnen.

Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.

[invokable] QVariantList QVirtualKeyboardTrace::channelData(const QString &channel, int pos = 0, int count = -1) const

Gibt Daten aus dem angegebenen channel zurück. Wenn keine weiteren Parameter angegeben werden, gibt die Methode alle Daten zurück.

Wenn der Parameter pos angegeben wird, gibt die Methode Daten ab der angegebenen Position zurück. Der Parameter count begrenzt, wie viele Elemente zurückgegeben werden.

Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.

Siehe auch setChannelData().

[invokable] QVariantList QVirtualKeyboardTrace::points(int pos = 0, int count = -1) const

Gibt eine Liste von Punkten zurück. Wenn keine Parameter angegeben werden, gibt die Methode alle Daten zurück.

Wenn der Parameter pos angegeben wird, gibt die Methode Punkte zurück, die an der Position beginnen. Der Parameter count begrenzt, wie viele Punkte zurückgegeben werden.

Die zurückgegebene Liste enthält die Typen QPointF.

Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.

[invokable] void QVirtualKeyboardTrace::setChannelData(const QString &channel, int index, const QVariant &data)

Legt data für den Punkt index in den angegebenen Daten channel fest.

Wenn diese Methode nicht für jeden Datenpunkt aufgerufen wird, werden die Kanaldaten mit leeren Werten aufgefüllt. Die Daten können jedoch nicht an einem beliebigen Index hinzugefügt werden, d. h. sie müssen synchron mit den Punktdaten hinzugefügt werden.

Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.

Siehe auch channelData().

[invokable, since QtQuick.VirtualKeyboard.Styles 6.1] void QVirtualKeyboardTrace::startHideTimer(int delayMs)

Startet einen Timer, um die Deckkraft nach delayMs auf Null zu setzen. Bei erneutem Aufruf innerhalb von delayMs wird der Timer neu gestartet.

Mit dieser Funktion kann die Eingabemethode die Messkurve vom Bildschirm ausblenden, bevor das Messkurvenobjekt zerstört wird, um beispielsweise anzuzeigen, dass die Messkurve verarbeitet wurde.

Hinweis: Diese Funktion kann über das Meta-Objektsystem und von QML aus aufgerufen werden. Siehe Q_INVOKABLE.

Diese Funktion wurde in QtQuick.VirtualKeyboard.Styles 6.1 eingeführt.

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