このページでは

Trace QML Type (Uncreatable)

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

Import Statement: import QtQuick.VirtualKeyboard
Since: QtQuick.VirtualKeyboard 2.0
In C++: QVirtualKeyboardTrace

注:これは生成不可能な型です。QML ではインスタンス化できません。

プロパティ

方法

詳細説明

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

trace オブジェクトの典型的な使用例は以下の通りです:

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

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

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

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

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

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

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

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

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

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

定義上、トレースオブジェクトが破棄されるのは、InputMethod.traceEnd() (QML) メソッド内が最も早いタイミングとなります。

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

canceled : bool

このプロパティは、トレースがキャンセルされたかどうかを定義します。canceled プロパティがtrueに設定されているトレースからの入力データは、処理すべきではありません。

channels : list<strings>

トレース内の追加データチャネルのリスト。このプロパティは、データを追加する前に初期化する必要があります。

final : bool

このプロパティは、Traceがそれ以上のデータを受け入れることができるかどうかを定義します。値がtrue の場合、それ以上のデータは受け付けられません。

opacity : real [since QtQuick.VirtualKeyboard 2.4]

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

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

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

このプロパティは、QtQuick.VirtualKeyboard 2.4 で導入されました。

traceId : int

このトレースの一意のID。

メソッドのドキュメント

int addPoint(point point)

トレースにpoint を追加します。

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

注: setChannelData() 関数を使用してポイントに追加データを関連付けるには、この戻り値のインデックス が必要です。

var channelData(string channel, int pos, int count)

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

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

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

var points(int pos, int count)

点のリストを返します。引数が指定されていない場合、この関数はすべての点を返します。

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

返されるリストには、point 型の要素が含まれます。

void setChannelData(int index, string channel, var data)

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

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

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

[since 6.1] void startHideTimer(int delayMs)

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

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

このメソッドは 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.