QIfPendingReplyBase 类

QIfPendingReplyBase 是 QIfPendingReply 的基类。 更多信息...

头文件 #include <QIfPendingReplyBase>
qmakeQT += interfaceframework
继承自

QIfPendingReply

属性

  • value : const QVariant
  • watcher : QIfPendingReplyWatcher* const

公有函数

boolisResultAvailable() const
boolisSuccessful() const
boolisValid() const
voidsetFailed()
voidsetSuccess(const QVariant &value)
voidthen(const QJSValue &success, const QJSValue &failed = QJSValue())
QVariantvalue() const
QIfPendingReplyWatcher *watcher() const

详细描述

QIfPendingReplyBase 是 QIfPendingReply 的基类,并为从 QML 使用提供了基于 QVariant 的函数和属性。

通常您不需要使用此类,而是直接使用类型安全的 QIfPendingReply 模板类。

属性文档

[只读] resultAvailable : const bool

存储是否已设置结果

使用 setSuccess() 或 setFailed() 设置结果后,此属性为 true

访问函数

boolisResultAvailable() const

[只读] success : const bool

存储回复是否成功

如果调用 setSuccess() 设置了一个有效的结果,则此属性为 true

访问函数

boolisSuccessful() const

[只读] valid : const bool

存储 QIfPendingReplyBase 是否有效

如果使用模板类 QIfPendingReply 之外的模板创建了一个 QIfPendingReplyBase,则观察者可能会变得无效。

访问函数

boolisValid() const

[只读] value : const QVariant

保存当前 QIfPendingReply 的值

如果目前没有结果或回复失败,返回一个默认构造的 QVariant() 类型。否则,返回一个包含结果的 QVariant 类型。

访问函数

QVariantvalue() const

[只读] watcher : QIfPendingReplyWatcher* const

保存 QIfPendingReply 的观察者

注意:返回的 QIfPendingReplyWatcherQIfPendingReply 和它的所有副本拥有。如果所有 QIfPendingReply 的副本都被删除,那么它的 QIfPendingReplyWatcher 也会被删除。

访问函数

QIfPendingReplyWatcher *watcher() const

成员函数文档

[可调用] void QIfPendingReplyBase::setFailed()

将回复标记为失败。

注意:结果只能设置一次,之后无法更改。

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

另请参阅setSuccess

[可调用] void QIfPendingReplyBase::setSuccess(const QVariant &value)

将回复的结果设置为 value 并将回复标记为成功。

给定值需要与回复具有相同的类型或可以转换为该类型。

注意:结果只能设置一次,之后无法更改。

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

另请参阅setFailed

[可调用] void QIfPendingReplyBase::then(const QJSValue &success, const QJSValue &failed = QJSValue())

设置在结果交付后将被调用的 JavaScript 回调。如果回复成功,则调用 success 回调,否则调用 failed 回调。

success 回调可以接受回复值作为参数。

提供的值需要是可调用的,并从 QJSEngine 中构建。传递由 C++ 生成的 QJSValue 对象将导致错误。

多次调用此函数将覆盖现有的回调。

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

© 2024 Qt 公司有限公司。本文件中包含的文档贡献版权归其各自的所有者。提供的文档是根据自由软件基金会发布的 GNU 自由文档许可协议版本 1.3 许可的。Qt 及其相关标志是芬兰及/或全球各地的 Qt 公司有限公司的商标。所有其他商标均为其各自所有者的财产。