Тип QML Trace
Trace — это модель данных для данных ввода касания. Подробнее...
| Оператор импорта: | import QtQuick.VirtualKeyboard 2.14 |
| С момента: | QtQuick.VirtualKeyboard 2.0 |
| Создаёт: | QVirtualKeyboardTrace |
Свойства
Методы
- int addPoint(point)
- var channelData(channel, int pos, int count)
- var points(pos, int count)
- void setChannelData(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:
Например, чтобы настроить объект для сбора времени для каждой точки:
QVirtualKeyboardTrace *trace = new QVirtualKeyboardTrace(this); trace->setChannels(QStringList() << "t");
Собранные данные можно получить с помощью функции channelData():
QVariantList timeData = trace->channelData("t"); Объекты trace принадлежат своему создателю, который является методом ввода в обычном случае. Это означает, что объекты создаются в методе InputMethod.traceBegin() (QML).
По определению, объект trace может быть уничтожен как минимум в методе InputMethod.traceEnd() (QML).
Документация по свойствам
canceled : bool
Это свойство определяет, отменён ли объект Trace. Данные ввода не должны обрабатываться из объектов Trace, для которых свойство canceled установлено в true.
channels : list<strings>
Список дополнительных каналов данных в объекте Trace. Это свойство должно быть инициализировано до добавления данных.
final : bool
Это свойство определяет, может ли объект Trace принимать больше данных. Если значение равно true, больше данных не принимаются.
opacity : qreal
Это свойство определяет степень непрозрачности объекта Trace.
Меньшее значение приводит к более прозрачному следу: 0.0 — полностью прозрачно, а 1.0 — полностью непрозрачно.
Это свойство полезно для создания более прозрачных старых следов при добавлении новых.
Это свойство было добавлено в QtQuick.VirtualKeyboard 2.4.
traceId : int
Уникальный идентификатор этого объекта Trace.
Документация по методам
int addPoint(point)
Добавляет point в объект Trace.
Метод возвращает индекс добавленной точки или -1, если точки добавить нельзя (т.е. если final равно true).
Примечание: Возвращаемый индекс необходим для привязки дополнительных данных к точке с помощью функции setChannelData().
var channelData(channel, int pos, int count)
Возвращает данные из указанного канала channel. Если другие параметры не заданы, функция возвращает все данные.
Если задан параметр pos, функция возвращает данные, начиная с указанной позиции. Параметр count ограничивает количество возвращаемых элементов.
См. также setChannelData().
Возвращает список точек. Если параметры не заданы, функция возвращает все точки.
Если задан параметр pos, функция возвращает точки, начиная с указанной позиции. Параметр count ограничивает количество возвращаемых точек.
Возвращаемый список содержит типы point.
void setChannelData(index, string 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/qt-5.14/qml-qtquick-virtualkeyboard-trace.html