QGeoCodeReply类

QGeoCodeReply类管理由QGeoCodingManager实例启动的操作的状态和结果。更多信息...

头文件 #include <QGeoCodeReply>
qmakeQT += location
继承 QObject

公共类型

enum错误 { NoError, EngineNotSetError, CommunicationError, ParseError, UnsupportedOptionError, …, UnknownError }

公共函数

QGeoCodeReply(QGeoCodeReply::Errorerror, const QString &errorString, QObject *parent = nullptr)
virtual~QGeoCodeReply()
virtual voidabort()
QGeoCodeReply::Error错误() const
QString错误信息() const
bool是否完成() const
qsizetype限制() const
QList位置() const
qsizetype偏移量() const
QGeoShape视口() const

信号

voidaborted()
void错误发生(QGeoCodeReply::Errorerror, const QString &errorString = QString())
voidfinished()

受保护的函数

QGeoCodeReply(QObject *parent = nullptr)
void添加位置(const QGeoLocation &location)
void设置错误(QGeoCodeReply::Errorerror, const QString &errorString)
void设置完成(boolfinished)
void设置限制(qsizetypelimit)
void设置位置(const QList&locations)
void设置偏移量(qsizetypeoffset)
void设置视口(const QGeoShape &viewport)

详细描述

QGeoCodeReply的实例管理这些操作的状态和结果。

方法isFinished()、error()和errorString()提供关于操作是否完成以及是否成功完成的信息。

可以使用finished()errorOccurred(QGeoCodeReply::Error, QString)信号来监控操作进度。

新创建的QGeoCodeReply可能会处于已完成状态,这通常是因为发生了错误。由于此类实例将永远不会发出finished()errorOccurred(QGeoCodeReply::Error, QString)信号,因此在连接到信号之前检查isFinished()的结果很重要。有关如何执行的说明,请参阅QGeoCodingManager的文档。

如果操作成功完成,可以使用locations()访问结果。

成员类型文档

enum QGeoCodeReply::Error

描述阻止操作完成的错误。

常量描述
QGeoCodeReply::NoError0未发生错误。
QGeoCodeReply::EngineNotSetError1使用的地理编码管理器没有与之关联的QGeoCodingManagerEngine实例。
QGeoCodeReply::CommunicationError2与服务提供商通信时发生错误。
QGeoCodeReply::ParseError3服务提供商的响应格式不可识别。
QGeoCodeReply::UnsupportedOptionError4请求的操作或操作的某个选项不被服务提供商支持。
QGeoCodeReply::CombinationError5在从多个来源组合结果时发生错误。
QGeoCodeReply::UnknownError6发生了一个不符合任何其他类别的错误。

成员函数文档

[显式] QGeoCodeReply::QGeoCodeReply(QGeoCodeReply::Error error, const QString &errorString, QObject *parent = nullptr)

使用指定的errorerrorString以及指定的parent构造地理编码回复。

[显式受保护] QGeoCodeReply::QGeoCodeReply(QObject *parent = nullptr)

使用指定的parent构造地理编码回复。

[虚函数 noexcept] QGeoCodeReply::~QGeoCodeReply()

销毁此回复对象。

[虚函数] void QGeoCodeReply::abort()

立即取消操作。

如果回复已完成,则此操作不会产生任何效果。

另请参阅aborted

[信号] void QGeoCodeReply::aborted()

当操作被取消时发出此信号。

另请参阅abort

[受保护] void QGeoCodeReply::addLocation(const QGeoLocation &location)

将位置添加到此回复的位置列表中。

QGeoCodeReply::Error QGeoCodeReply::error() const

返回此回复的错误状态。

如果结果是 QGeoCodeReply::NoError,则没有发生错误。

另请参阅setError

[信号] void QGeoCodeReply::errorOccurred(QGeoCodeReply::Error error, const QString &errorString = QString())

当检测到此回复处理中的错误时,将发出此信号。可能随后会发出 finished() 信号。

将使用错误代码来描述错误 error。如果 errorString 不为空,它将包含错误的文本描述。

此信号和 QGeoCodingManager::errorOccurred() 将同时发出。

注意:不要在此信号的槽中删除此回复对象。请使用 deleteLater() 代替。

QString QGeoCodeReply::errorString() const

返回此回复错误状态的文本表示。

如果没有发生错误,则此函数将返回空字符串。也可能发生一个没有相关文本表示的错误,在这种情况下,也会返回空字符串。

要确定是否发生错误,请检查 QGeoCodeReply::error() 是否等于 QGeoCodeReply::NoError

[信号] void QGeoCodeReply::finished()

当此回复完成处理时,会发出此信号。

如果 error() 等于 QGeoCodeReply::NoError,则处理成功完成。

此信号和 QGeoCodingManager::finished() 将同时发出。

注意:不要在此信号的槽中删除此回复对象。请使用 deleteLater() 代替。

另请参阅setFinished

bool QGeoCodeReply::isFinished() const

如果操作已成功完成或遇到导致操作停止的错误,则返回 true。

qsizetype QGeoCodeReply::limit() const

返回每个数据源响应的数目限制。

如果没有设置限制,此函数将返回 -1。

如果请求的响应数小于返回的响应数,这可能大于 locations().length()。

另请参阅setLimit

QList<QGeoLocation> QGeoCodeReply::locations() const

返回位置列表。

这些位置是 QGeoCodingManager 函数所创建的与此回复相对应的操作的结果。

另请参阅setLocations

qsizetype QGeoCodeReply::offset() const

返回从整个结果集中开始检索结果的偏移量。

另请参阅 setOffset().

[protected] void QGeoCodeReply::setError(QGeoCodeReply::Error error, const QString &errorString)

将此响应的错误状态设置为error,并将错误文本表示为errorString

这将还会引发errorOccurred() 和 finished 信号,按此顺序。

另请参阅 error().

[protected] void QGeoCodeReply::setFinished(bool finished)

设置此响应是否已完成 finished

如果 finished 为真,这将导致finished 信号被引发。

如果操作成功完成,应在调用此函数之前调用QGeoCodeReply::setLocations。如果发生错误,则应使用QGeoCodeReply::setError

另请参阅 finished().

[protected] void QGeoCodeReply::setLimit(qsizetype limit)

将每个数据源响应的数量限制设置为limit

如果limit 为-1,则将返回所有可用响应。

另请参阅 limit().

[protected] void QGeoCodeReply::setLocations(const QList<QGeoLocation> &locations)

设置回复中locations的列表。

另请参阅 locations().

[protected] void QGeoCodeReply::setOffset(qsizetype offset)

将开始检索结果的整个结果集的偏移量设置为offset

另请参阅 offset().

[protected] void QGeoCodeReply::setViewport(const QGeoShape &viewport)

将包含结果的视口设置为viewport

另请参阅 viewport().

QGeoShape QGeoCodeReply::viewport() const

返回包含结果的视口。

如果创建此响应的QGeoCodingManager 函数中没有指定视口偏差,则此函数将返回 nullptr

另请参阅 setViewport().

© 2024 Qt公司有限公司。本文件中包含的文档贡献属各自所有者的版权。提供的文档受免费软件基金会发布并由其出版的GNU自由文档许可证第1.3版条款的许可。Qt及其相应标志是芬兰及/或世界其他国家的Qt公司有限公司的商标。所有其他商标均属其各自所有者所有。