Класс QGeoCodeReply
Класс QGeoCodeReply управляет операцией, запущенной экземпляром QGeoCodingManager. Подробнее...
| Заголовок: | #include <QGeoCodeReply> |
| qmake: | QT += location |
| С момента: | Qt 5.6 |
| Наследует: | QObject |
Открытые типы
| перечисление | Error { NoError, EngineNotSetError, CommunicationError, ParseError, ..., UnknownError } |
Открытые функции
| QGeoCodeReply(Error error, const QString &errorString, QObject *parent = Q_NULLPTR) | |
| виртуальный | ~QGeoCodeReply() |
| виртуальный void | abort() |
| Error | error() const |
| QString | errorString() const |
| bool | isFinished() const |
| int | limit() const |
| QList<QGeoLocation> | locations() const |
| int | offset() const |
| QGeoShape | viewport() const |
- 31 открытых функций, унаследованных от QObject
Сигналы
| void | error(QGeoCodeReply::Error error, const QString &errorString = QString()) |
| void | finished() |
- 2 сигнала, унаследованные от QObject
Защищенные функции
| QGeoCodeReply(QObject *parent = Q_NULLPTR) | |
| void | addLocation(const QGeoLocation &location) |
| void | setError(Error error, const QString &errorString) |
| void | setFinished(bool finished) |
| void | setLimit(int limit) |
| void | setLocations(const QList<QGeoLocation> &locations) |
| void | setOffset(int offset) |
| void | setViewport(const QGeoShape &viewport) |
- 9 защищенных функций, унаследованных от QObject
Дополнительные унаследованные члены
- 1 свойство, унаследованное от QObject
- 1 открытый слот, унаследованный от QObject
- 11 статических открытых членов, унаследованных от QObject
Подробное описание
Класс QGeoCodeReply управляет операцией, запущенной экземпляром QGeoCodingManager.
Экземпляры QGeoCodeReply управляют состоянием и результатами этих операций.
Методы isFinished(), error() и errorString() предоставляют информацию о завершении операции и её успешности.
Сигналы finished() и error(QGeoCodeReply::Error,QString) могут использоваться для мониторинга прогресса операции.
Возможным является то, что недавно созданный QGeoCodeReply может быть в завершенном состоянии, чаще всего из-за ошибки. Поскольку такой экземпляр никогда не будет испускать сигналы finished() или error(QGeoCodeReply::Error,QString), важно проверить результат isFinished() перед подключением к сигналам. Документация для QGeoCodingManager демонстрирует, как это можно сделать.
Если операция завершается успешно, к результатам можно получить доступ с помощью locations().
Документация по типам членов
перечисление QGeoCodeReply::Error
Описание ошибки, которая помешала завершению операции.
| Константа | Значение | Описание |
|---|---|---|
QGeoCodeReply::NoError |
0 |
Ошибка не произошла. |
QGeoCodeReply::EngineNotSetError |
1 |
У управляющего компонента геокодирования (QGeoCodingManager) не было экземпляра QGeoCodingManagerEngine. |
QGeoCodeReply::CommunicationError |
2 |
Во время связи с поставщиком услуг произошла ошибка. |
QGeoCodeReply::ParseError |
3 |
Ответ от поставщика услуг был в нераспознаваемом формате. |
QGeoCodeReply::UnsupportedOptionError |
4 |
Запрашиваемая операция или один из вариантов операции не поддерживаются поставщиком услуг. |
QGeoCodeReply::CombinationError |
5 |
Произошла ошибка при объединении результатов из нескольких источников. |
QGeoCodeReply::UnknownError |
6 |
Произошла ошибка, которая не попадает ни в одну из других категорий. |
Документация по функциям-членам
QGeoCodeReply::QGeoCodeReply(Error error, const QString &errorString, QObject *parent = Q_NULLPTR)
Создаёт ответ о геокодировании с заданной ошибкой и описанием ошибки и указанным родительским объектом.
[protected] QGeoCodeReply::QGeoCodeReply(QObject *parent = Q_NULLPTR)
Создаёт ответ о геокодировании с указанным родительским объектом.
[virtual] QGeoCodeReply::~QGeoCodeReply()
Уничтожает этот объект ответа.
[virtual] void QGeoCodeReply::abort()
Немедленно отменяет операцию.
Это ничего не делает, если ответ уже завершён.
[protected] void QGeoCodeReply::addLocation(const QGeoLocation &location)
Добавляет location в список мест в этом ответе.
Error QGeoCodeReply::error() const
Возвращает состояние ошибки этого ответа.
Если результат равен QGeoCodeReply::NoError, то ошибка не произошла.
См. также setError().
[signal] void QGeoCodeReply::error(QGeoCodeReply::Error error, const QString &errorString = QString())
Этот сигнал испускается, когда при обработке этого ответа была обнаружена ошибка. Скорее всего, последует сигнал finished().
END_OF_DOCUMENT_MARKERОшибка будет описана с помощью кода ошибки error. Если errorString не пустая, она будет содержать текстовое описание ошибки.
Этот сигнал и QGeoCodingManager::error() будут выпущены одновременно.
Примечание: Не удаляйте этот объект ответа в слоте, подключенном к этому сигналу. Используйте deleteLater() вместо этого.
Примечание: Сигнал error перегружен в этом классе. Чтобы подключиться к этому сигналу с помощью синтаксиса указателя на функцию, необходимо указать тип сигнала в статическом преобразовании, как показано в этом примере:
connect(geoCodeReply, static_cast<void(QGeoCodeReply::*)(QGeoCodeReply::Error, const QString &)>(&QGeoCodeReply::error),
[=](QGeoCodeReply::Error error, const QString &errorString){ /* ... */ }); QString QGeoCodeReply::errorString() const
Возвращает текстовое представление состояния ошибки этого ответа.
Если ошибка не произошла, будет возвращена пустая строка. Возможна ситуация, когда произошла ошибка, у которой нет связанного текстового представления, в этом случае также будет возвращена пустая строка.
Чтобы определить, произошла ли ошибка, проверьте, равно ли QGeoCodeReply::error() значению QGeoCodeReply::NoError.
[signal] void QGeoCodeReply::finished()
Этот сигнал излучается, когда этот ответ завершил обработку.
Если error() равно QGeoCodeReply::NoError, обработка завершилась успешно.
Этот сигнал и QGeoCodingManager::finished() будут выпущены одновременно.
Примечание: Не удаляйте этот объект ответа в слоте, подключенном к этому сигналу. Используйте deleteLater() вместо этого.
См. также setFinished().
bool QGeoCodeReply::isFinished() const
Возвращает true, если операция выполнена успешно или произошла ошибка, которая привела к остановке операции.
int QGeoCodeReply::limit() const
Возвращает ограничение на количество ответов от каждого источника данных.
Если ограничение не было установлено, функция вернет -1.
Это значение может быть больше, чем locations().length(), если количество ответов было меньше запрошенного количества.
См. также setLimit().
QList<QGeoLocation> QGeoCodeReply::locations() const
Возвращает список местоположений.
Местоположения — это результаты операции, соответствующей функции QGeoCodingManager, которая создала этот ответ.
См. также setLocations().
int QGeoCodeReply::offset() const
Возвращает смещение в полном наборе результатов, с которого следует начать извлечение результатов.
См. также setOffset().
[protected] void QGeoCodeReply::setError(Error error, const QString &errorString)
Устанавливает состояние ошибки этого ответа на error и текстовое представление ошибки на errorString.
Это также приведет к тому, что сигналы error() и finished() будут выпущены в указанном порядке.
См. также error().
[protected] void QGeoCodeReply::setFinished(bool finished)
Устанавливает, завершен ли этот ответ, на finished.
Если finished равно true, это вызовет выпуск сигнала finished().
Если операция выполнена успешно, следует вызвать QGeoCodeReply::setLocations() перед этой функцией. Если произошла ошибка, следует использовать QGeoCodeReply::setError() вместо этого.
См. также finished().
[protected] void QGeoCodeReply::setLimit(int limit)
Устанавливает ограничение на количество ответов от каждого источника данных на limit.
Если limit равно -1, будут возвращены все доступные ответы.
См. также limit().
[protected] void QGeoCodeReply::setLocations(const QList<QGeoLocation> &locations)
Устанавливает список locations в ответе.
См. также locations().
[protected] void QGeoCodeReply::setOffset(int offset)
Устанавливает смещение в полном наборе результатов, с которого следует начать извлечение результатов, на offset.
См. также offset().
[protected] void QGeoCodeReply::setViewport(const QGeoShape &viewport)
Устанавливает область просмотра, содержащую результаты, на viewport.
См. также viewport().
QGeoShape QGeoCodeReply::viewport() const
Возвращает область просмотра, содержащую результаты.
Эта функция вернёт 0, если в функции QGeoCodingManager, которая создала этот ответ, не был указан смещение области просмотра.
См. также setViewport().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qgeocodereply.html