QVirtualKeyboardTrace 类

跟踪是触摸输入数据的数据模型。 更多...

头文件 #include <QVirtualKeyboardTrace>
CMakefind_package(Qt6 REQUIRED COMPONENTS VirtualKeyboard)
target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard)
qmakeQT += virtualkeyboard
自从QtQuick.VirtualKeyboard 2.0
由以下实例化 跟踪
继承 QObject

属性

公共函数

intaddPoint(const QPointF &point)
QVariantListchannelData(const QString &channel, int pos = 0, int count = -1) const
QStringListchannels() const
boolisCanceled() const
boolisFinal() const
intlength() const
qrealopacity() const
QVariantListpoints(int pos = 0, int count = -1) const
voidsetCanceled(bool canceled)
voidsetChannelData(const QString &channel, int index, const QVariant &data)
voidsetChannels(const QStringList &channels)
voidsetFinal(bool final)
voidsetOpacity(qreal opacity)
voidsetTraceId(int id)
(since QtQuick.VirtualKeyboard.Styles 6.1) voidstartHideTimer(int delayMs)
inttraceId() const

信号

voidcanceledChanged(bool isCanceled)
voidchannelsChanged()
voidfinalChanged(bool isFinal)
voidlengthChanged(int length)
voidopacityChanged(qreal opacity)
voidtraceIdChanged(int traceId)

详细说明

“追踪”提供单个笔画相关坐标数据和可选数据的模型。

跟踪对象的一个典型用例如下

  • TraceInputArea 或其他输入设备通过调用 InputEngine.traceBegin() 方法来启动跟踪事件。
  • 如果当前输入方法接受该事件,则创建一个跟踪对象并配置所需的数据通道(如果有)。
  • TraceInputArea 收集跟踪对象的必要数据。
  • TraceInputArea 调用 InputEngine.traceEnd() 方法来完成跟踪并将跟踪对象返回给输入方法。
  • 输入方法处理数据并在不再需要时丢弃对象。

使用 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) 方法中构建。

根据定义,跟踪对象可以在InputMethod.traceEnd() (QML) 方法中最早被销毁。

属性文档

canceled : bool

定义是否取消 QVirtualKeyboardTrace

不应从将 canceled 属性设置为 true 的 Trace 中处理输入数据。

访问函数

boolisCanceled() const
voidsetCanceled(bool canceled)

通知信号

voidcanceledChanged(bool isCanceled)

channels : QStringList

在 QQTrace 中的数据通道列表。

必须在此属性初始化之前添加数据。

访问函数

QStringListchannels() const
voidsetChannels(const QStringList &channels)

通知信号

voidchannelsChanged()

final : bool

定义 QVirtualKeyboardTrace 是否可以接受更多数据。如果值为 true,则不接受更多数据。

访问函数

boolisFinal() const
voidsetFinal(bool final)

通知信号

voidfinalChanged(bool isFinal)

[只读] length : const int

此属性包含 QVirtualKeyboardTrace 中的点数。

访问函数

intlength() const

通知信号

voidlengthChanged(int length)

透明度 : qreal

此属性定义了QVirtualKeyboardTrace的透明度。

较低的值会导致更透明的追踪:0.0 表示完全透明,而 1.0 表示完全不透明。

此属性在有新追踪加入时,可以使旧追踪更加透明。

访问函数

qrealopacity() const
voidsetOpacity(qreal 透明度)

通知信号

voidopacityChanged(qreal 透明度)

追踪ID : int

QVirtualKeyboardTrace的唯一ID。

访问函数

inttraceId() const
voidsetTraceId(int id)

通知信号

voidtraceIdChanged(int 追踪ID)

成员函数文档

[可调用] int QVirtualKeyboardTrace::addPoint(const QPointF &point)

QVirtualKeyboardTrace添加一个point

此方法返回添加的点的索引,或者在点无法添加时返回 -1(例如,当 final 为 true 时)。

注意:返回的索引用于通过setChannelData()方法将额外数据关联到点。

注意:此函数可以通过元对象系统调用来调用,也可以从 QML 调用。请参阅Q_INVOKABLE

[可调用] QVariantList QVirtualKeyboardTrace::channelData(const QString &channel, int pos = 0, int count = -1) const

返回指定channel中的数据。如果没有给出其他参数,则方法返回所有数据。

如果给出pos参数,则方法返回从位置开始的坐标。参数count限制返回的项的数量。

注意:此函数可以通过元对象系统调用来调用,也可以从 QML 调用。请参阅Q_INVOKABLE

另请参阅setChannelData

[可调用] QVariantList QVirtualKeyboardTrace::points(int pos = 0, int count = -1) const

返回点的列表。如果没有给出参数,则方法返回所有数据。

如果给出pos参数,则从位置返回点。参数count限制返回点的数量。

返回的列表包含QPointF类型。

注意:此函数可以通过元对象系统调用来调用,也可以从 QML 调用。请参阅Q_INVOKABLE

[可调用] void QVirtualKeyboardTrace::setChannelData(const QString &channel, int index, const QVariant &data)

设置给定的数据channel中索引为index的点的数据。

如果没有为此方法中的每个数据点调用,则通道数据将以空值填充。但是,无法在任意索引处添加数据,即它必须与点数据同步添加。

注意:此函数可以通过元对象系统调用来调用,也可以从 QML 调用。请参阅Q_INVOKABLE

请参阅channelData

[可调用,自 QtQuick.VirtualKeyboard.Styles 6.1起] void QVirtualKeyboardTrace::startHideTimer(int delayMs)

启动一个计时器,在delayMs后设置不透明度为零。如果在delayMs内再次调用,计时器将重新启动。

使用此函数,输入法可以在销毁跟踪对象之前将其从屏幕隐藏,例如,表示跟踪已处理。

注意:此函数可以通过元对象系统调用来调用,也可以从 QML 调用。请参阅Q_INVOKABLE

此函数自 QtQuick.VirtualKeyboard.Styles 6.1版起引入。

© 2024 Qt公司有限公司。此处包含的文档贡献者的文档版权所有。此处提供的文档根据自由软件基金会发布、GNU自由文档许可版1.3的条款进行许可。Qt及其相应标志是芬兰及其它全球国家The Qt Company有限公司的商标。所有其他商标均为相应所有者的财产。