QIfPendingReplyBase 类
QIfPendingReplyBase 是 QIfPendingReply 的基类。 更多信息...
头文件 | #include <QIfPendingReplyBase> |
qmake | QT += interfaceframework |
继承自 |
属性
|
公有函数
bool | isResultAvailable() const |
bool | isSuccessful() const |
bool | isValid() const |
void | setFailed() |
void | setSuccess(const QVariant &value) |
void | then(const QJSValue &success, const QJSValue &failed = QJSValue()) |
QVariant | value() const |
QIfPendingReplyWatcher * | watcher() const |
详细描述
QIfPendingReplyBase 是 QIfPendingReply 的基类,并为从 QML 使用提供了基于 QVariant 的函数和属性。
通常您不需要使用此类,而是直接使用类型安全的 QIfPendingReply 模板类。
属性文档
[只读]
resultAvailable : const bool
存储是否已设置结果
使用 setSuccess() 或 setFailed() 设置结果后,此属性为 true
。
访问函数
bool | isResultAvailable() const |
[只读]
success : const bool
存储回复是否成功
如果调用 setSuccess() 设置了一个有效的结果,则此属性为 true
。
访问函数
bool | isSuccessful() const |
[只读]
valid : const bool
存储 QIfPendingReplyBase 是否有效
如果使用模板类 QIfPendingReply 之外的模板创建了一个 QIfPendingReplyBase,则观察者可能会变得无效。
访问函数
bool | isValid() const |
[只读]
value : const QVariant
保存当前 QIfPendingReply 的值
如果目前没有结果或回复失败,返回一个默认构造的 QVariant() 类型。否则,返回一个包含结果的 QVariant 类型。
访问函数
QVariant | value() const |
[只读]
watcher : QIfPendingReplyWatcher* const
保存 QIfPendingReply 的观察者
注意:返回的 QIfPendingReplyWatcher 由 QIfPendingReply 和它的所有副本拥有。如果所有 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 公司有限公司的商标。所有其他商标均为其各自所有者的财产。