このページでは

QVirtualKeyboardTrace Class

Traceは、タッチ入力データのためのデータモデルです。詳細...

ヘッダー: #include <QVirtualKeyboardTrace>
CMake: find_package(Qt6 REQUIRED COMPONENTS VirtualKeyboard)
target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard)
qmake: QT += virtualkeyboard
バージョン: QtQuick.VirtualKeyboard 2.0
QML における: Trace
継承元: QObject

プロパティ

パブリック関数

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

シグナル

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

詳細な説明

Trace は、単一のストロークに関連付けられた座標データやその他のオプションデータのためのデータモデルを提供します。

trace オブジェクトの典型的な使用例は次のとおりです。

  • TraceInputArea またはその他の入力デバイスが、InputEngine.traceBegin() メソッドを呼び出すことでトレースイベントを開始します。
  • 現在の入力メソッドがそのイベントを受け入れる場合、トレースオブジェクトを作成し、必要なデータチャネル(ある場合)を設定します。
  • TraceInputArea Trace オブジェクトのデータを収集します。
  • TraceInputArea InputEngine.traceEnd() メソッドを呼び出してトレースを終了し、トレースオブジェクトを入力メソッドに返します。
  • 入力メソッドはデータを処理し、オブジェクトが不要になった時点で破棄します。

座標データは、points() 関数を使用して取得されます。

座標ベースのデータに加え、各データポイントに任意のデータチャネルを関連付けることも可能です。

データチャネルは、ポイントを追加する前に定義しておく必要があります。TraceInputArea がサポートするデータチャネルは以下の通りです。

  • "t" 各データポイントの時刻を収集します。時刻は、1970年1月1日からの経過ミリ秒数です。

たとえば、各ポイントの時刻を収集するようにオブジェクトを設定するには、次のようにします:

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

収集されたデータには、channelData() 関数を使用してアクセスできます:

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

QVirtualKeyboardTrace オブジェクトは、通常は入力メソッドである作成者が所有します。つまり、オブジェクトはInputMethod.traceBegin() (QML) メソッド内で生成されます。

定義上、トレースオブジェクトは、InputMethod.traceEnd() (QML) メソッド内で最も早く破棄される可能性があります。

プロパティのドキュメント

canceled : bool

QVirtualKeyboardTrace がキャンセルされるかどうかを指定します。

canceled プロパティが true に設定されているトレースからの入力データは、処理対象とすべきではありません。

アクセス関数:

bool isCanceled() const
void setCanceled(bool canceled)

通知シグナル:

void canceledChanged(bool isCanceled)

channels : QStringList

QQTrace内のデータチャネルのリスト。

このプロパティは、データを追加する前に初期化する必要があります。

アクセス関数:

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

通知シグナル:

void channelsChanged()

final : bool

QVirtualKeyboardTrace がそれ以上のデータを受け入れられるかどうかを指定します。値がtrue の場合、それ以上のデータは受け付けられません。

アクセス関数:

bool isFinal() const
void setFinal(bool final)

通知シグナル:

void finalChanged(bool isFinal)

[read-only] length : int

このプロパティは、QVirtualKeyboardTrace 内のポイント数を保持します。

アクセス関数:

int length() const

通知信号:

void lengthChanged(int length)

opacity : qreal

このプロパティは、QVirtualKeyboardTrace の不透明度を定義します。

値が小さいほどトレースは透明度が高くなります。0.0 は完全に透明で、1.0 は完全に不透明です。

このプロパティは、新しいトレースが追加されるにつれて、古いトレースをより透明にするのに役立ちます。

アクセス関数:

qreal opacity() const
void setOpacity(qreal opacity)

通知信号:

void opacityChanged(qreal opacity)

traceId : int

このQVirtualKeyboardTrace の固有ID。

アクセス関数:

int traceId() const
void setTraceId(int id)

通知シグナル:

void traceIdChanged(int traceId)

メンバ関数のドキュメント

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

QVirtualKeyboardTrace にpoint を追加します。

このメソッドは、追加されたポイントのインデックスを返します。ポイントを追加できない場合(つまり、final がtrueの場合)は-1を返します。

注: 返されるインデックスは 、setChannelData() メソッドを使用してポイントに追加データを関連付けるために必要です。

注:この関数は 、メタオブジェクトシステムを介して、および QML から呼び出すことができます。Q_INVOKABLE を参照してください。

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

指定されたchannel からデータを返します。他のパラメータが指定されていない場合、このメソッドはすべてのデータを返します。

pos パラメータが指定された場合、このメソッドはその位置から始まるデータを返します。count パラメータは、返される項目の数を制限します。

注:この関数は 、メタオブジェクトシステム経由およびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

setChannelData()も参照してください 。

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

点のリストを返します。パラメータが指定されていない場合、このメソッドはすべてのデータを返します。

pos パラメータが指定された場合、このメソッドはその位置から始まる座標を返します。count パラメータは、返される座標の数を制限します。

返されるリストには、QPointF 型のデータが含まれます。

注:この関数は 、メタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

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

指定されたデータ `channel` 内の `index ` にあるデータポイントに対して、data を設定します。

各データポイントに対してこのメソッドが呼び出されない場合、チャネルデータには空の値が埋められます。ただし、データは任意のインデックスに追加することはできず、つまり、ポイントデータと同期して追加する必要があります。

注:この関数は 、メタオブジェクトシステムを介して、およびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

channelData()も参照してください 。

[invokable, since 6.1] void QVirtualKeyboardTrace::startHideTimer(int delayMs)

delayMs の後に不透明度をゼロに設定するためのタイマーを開始します。delayMs の範囲内で再度呼び出されると、タイマーが再起動されます。

この関数を使用することで、入力メソッドは、例えばトレースが処理されたことを示すために、トレースオブジェクトを破棄する前に画面からトレースを非表示にすることができます。

注:この関数は 、メタオブジェクトシステムを介して、またはQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

この関数は 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.