Тип QML Trace
Trace — это модель данных для входных данных касания. Подробнее...
| Заявление об импорте: | import QtQuick.VirtualKeyboard 2.3 |
| С момента: | QtQuick.VirtualKeyboard 2.0 |
Свойства
- channels : список<строки>
- isCanceled : bool
- isFinal : bool
- length : int
- traceId : int
Методы
- int addPoint(точка point)
- var channelData(строка channel, int pos, int count)
- var points(int pos, int count)
- void setChannelData(int index, string channel, var data)
Подробное описание
Trace предоставляет модель данных для координатных данных и других необязательных данных, связанных с одним нажатием.
Типичный сценарий использования объекта trace выглядит следующим образом:
- TraceInputArea или другое устройство ввода инициирует событие trace, вызывая метод InputEngine.traceBegin().
- Если текущий метод ввода принимает событие, он создаёт объект trace и настраивает необходимые каналы данных (при необходимости).
- TraceInputArea собирает данные для объекта trace.
- TraceInputArea вызывает метод InputEngine.traceEnd(), чтобы завершить trace и передать объект trace обратно методу ввода.
- Метод ввода обрабатывает данные и удаляет объект, когда он больше не нужен.
Координатные данные извлекаются с помощью функции points().
Помимо данных на основе координат, можно прикрепить произвольный канал данных к каждому элементу данных.
Каналы данных должны быть определены до добавления точек. Каналы данных, поддерживаемые TraceInputArea, перечислены ниже:
-
"t"Собирает время для каждого элемента данных. Время — это количество миллисекунд с 1970/01/01:
Например, чтобы настроить объект на сбор времени для каждой точки:
Trace *trace = new Trace(this); trace->setChannels(QStringList() << "t");
Собранные данные можно получить с помощью функции channelData():
QVariantList timeData = trace->channelData("t"); Объекты Trace принадлежат своему создателю, который в обычном случае является методом ввода. Это означает, что объекты создаются в методе InputMethod.traceBegin() (QML).
По определению, объект trace может быть уничтожен не ранее, чем в методе InputMethod.traceEnd() (QML).
Документация по свойствам
channels : список<строки>
Список дополнительных каналов данных в Trace. Это свойство должно быть инициализировано перед добавлением данных.
isCanceled : bool
Это свойство определяет, отменено ли Trace. Данные ввода не должны обрабатываться из Trace, у которых свойство isCanceled установлено в true.
isFinal : bool
Это свойство определяет, может ли Trace принять больше данных. Если значение равно true, больше данных не принимаются.
length : int
Количество точек в Trace.
traceId : int
Уникальный идентификатор этого Trace.
Документация по методам
Добавляет point в Trace.
Метод возвращает индекс добавленной точки или -1, если точки нельзя добавить (т. е. isFinal равно true).
Примечание: Возвращаемый индекс необходим для сопоставления дополнительных данных с точкой с помощью функции setChannelData().
var channelData(строка channel, int pos, int count)
Возвращает данные из указанного канала channel. Если другие параметры не указаны, функция возвращает все данные.
Если параметр pos указан, функция возвращает данные, начиная с указанной позиции. Параметр count ограничивает количество возвращаемых элементов.
См. также setChannelData().
var points(int pos, int count)
Возвращает список точек. Если параметры не указаны, функция возвращает все точки.
Если параметр pos указан, функция возвращает точки, начиная с указанной позиции. Параметр count ограничивает количество возвращаемых точек.
Возвращаемый список содержит point типы.
void setChannelData(int index, строка channel, var data)
Устанавливает data для точки с индексом index в заданном канале данных channel.
Если этот метод не вызывается для каждой точки данных, данные канала будут заполнены пустыми значениями. Однако данные нельзя добавить в произвольный индекс, т. е. их необходимо добавлять синхронно с данными точки.
См. также channelData().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qml-qtquick-virtualkeyboard-trace.html