Trace QML Type
Traceはタッチ入力データのデータモデルです。詳細...
| Import Statement: | import QtQuick.VirtualKeyboard |
| Since: | QtQuick.VirtualKeyboard 2.0 |
| In C++: | QVirtualKeyboardTrace |
プロパティ
- canceled : bool
- channels : list<strings>
- final : bool
- opacity : real
(since QtQuick.VirtualKeyboard 2.4) - traceId : int
方法
- int addPoint(point point)
- var channelData(string channel, int pos, int count)
- var points(int pos, int count)
- void setChannelData(int index, string channel, var data)
- void startHideTimer(int delayMs)
(since 6.1)
詳細説明
Traceは、1つのストロークに関連する座標データおよびその他のオプションデータのデータモデルを提供する。
トレースオブジェクトの典型的な使用例は以下の通りです:
- TraceInputArea または他の入力デバイスがInputEngine.traceBegin() メソッドを呼び出してトレースイベントを開始します。
- 現在の入力メソッドがイベントを受け入れると、トレース・オブジェクトが作成され、必要なデータ・チャンネル(もしあれば)が設定されます。
- TraceInputArea トレース・オブジェクトのデータを収集する。
- TraceInputArea InputEngine.traceEnd() メソッドを呼び出してトレースを終了し、トレースオブジェクトを入力メソッドに渡す。
- input メソッドはデータを処理し、不要になったらオブジェクトを破棄する。
座標データはpoints() 関数を使用して取得される。
座標ベースのデータに加えて、各データ・ポイントに任意のデータ・チャンネルを付加することも可能です。
データ・チャネルは、点を追加する前に定義しておく必要があります。TraceInputArea がサポートするデータ・チャネルを以下に示す:
"t"各データポイントの時間を収集する。時間は 1970/01/01 からのミリ秒数:
例えば、各ポイントの時間を収集するようにオブジェクトを構成します:
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 に設定された Trace からは、入力データは処理されません。
channels : list<strings>
トレース内の追加データチャネルのリスト。このプロパティは、データを追加する前に初期化する必要があります。
final : bool
このプロパティは、Traceがより多くのデータを受け入れることができるかどうかを定義する。値がtrue の場合、それ以上のデータは受け付けられません。
opacity : real [since QtQuick.VirtualKeyboard 2.4]
このプロパティは、トレースの不透明度を定義する。
値が低いほど、トレースはより透明になります。0.0 は完全に透明で、1.0 は完全に不透明です。
このプロパティは、新しいトレースが追加されたときに、古いトレースをより透明にするのに便利です。
このプロパティは QtQuick.VirtualKeyboard 2.4 で導入されました。
traceId : int
この Trace のユニーク 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.