Spec-Zone.ru › Qt

Класс QVirtualKeyboardTrace

Trace — это модель данных для данных о прикосновении. Подробнее...

Заголовок: #include <QVirtualKeyboardTrace>
CMake: find_package(Qt6 COMPONENTS VirtualKeyboard REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard)
qmake: QT += virtualkeyboard
С момента: QtQuick.VirtualKeyboard 2.0
Инициализируется: Trace
Наследует: QObject
  • Список всех членов, включая унаследованные

Свойства

  • canceled : bool
  • channels : QStringList
  • final : bool
  • length : const int
  • opacity : qreal
  • traceId : int

Открытые функции

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)
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 или другое устройство ввода инициирует событие 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");

Объекты QVirtualKeyboardTrace принадлежат своему создателю, который в нормальном случае является методом ввода. Это означает, что объекты создаются в методе InputMethod.traceBegin() (QML).

По определению, объект trace может быть уничтожен как минимум в методе 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 : const 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.

Функции доступа:

int traceId() const
void setTraceId(int id)

Сигнал уведомления:

void traceIdChanged(int traceId)

Документация функций-членов

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

Добавляет point в QVirtualKeyboardTrace.

Метод возвращает индекс добавленной точки или -1, если точки добавить нельзя (т.е. если final равно true).

Примечание: Возвращаемый индекс необходим для ассоциации дополнительных данных с точкой с помощью метода 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)

Устанавливает data для точки с индексом index в указанном канале данных channel.

Если этот метод не вызывается для каждой точки данных, данные канала будут заполнены пустовыми значениями. Однако, данные нельзя добавлять в произвольный индекс, т.е. их необходимо добавлять синхронно с данными точки.

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

См. также channelData().

[invokable, since QtQuick.VirtualKeyboard.Styles 6.1] void QVirtualKeyboardTrace::startHideTimer(int delayMs)

Запускает таймер для установки непрозрачности в ноль после delayMs. Если вызывается снова в течение delayMs, таймер перезапускается.

С помощью этой функции метод ввода может скрыть трассу с экрана перед уничтожением объекта трассы, например, для указания того, что трасса была обработана.

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

Эта функция была представлена в QtQuick.VirtualKeyboard.Styles 6.1.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qvirtualkeyboardtrace.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API