Тип QML PlaceSearchSuggestionModel
Предоставляет доступ к предложениям по поисковым запросам. Подробнее...
| Выражение импорта: | import QtLocation 5.13 |
| С: | QtLocation 5.5 |
Свойства
- limit : int
- offset : int
- plugin : Plugin
- searchArea : geoshape
- searchTerm : string
- status : перечисление
- suggestions : stringlist
Методы
- void cancel()
- string errorString()
- void reset()
- void update()
Подробное описание
Модель PlaceSearchSuggestionModel может использоваться для предоставления предложений по поисковым запросам по мере ввода пользователем поискового запроса. Свойства этой модели должны соответствовать свойствам PlaceSearchModel, который будет использоваться для выполнения фактического запроса поиска, чтобы гарантировать, что результаты предложений поиска релевантны.
Есть два способа доступа к данным, предоставляемым этой моделью: через свойство suggestions или через представления и делегаты. Последний метод предпочтительнее.
Свойства offset и limit могут использоваться для доступа к постраничным предложениям. Когда свойства offset и limit установлены, будут возвращены предложения между offset и (offset + limit - 1). Поддержка постраничного отображения может варьироваться в зависимости от плагина.
Модель возвращает данные для следующих ролей:
| Роль | Тип | Описание |
|---|---|---|
| suggestion | string | Предлагаемый поисковый запрос. |
Следующий пример демонстрирует использование PlaceSearchSuggestionModel для получения предложенных поисковых запросов из частичного поискового запроса. searchArea устанавливается таким образом, чтобы соответствовать тому, что использовалось бы для выполнения фактического поиска места с помощью PlaceSearchModel.
import QtQuick 2.0
import QtPositioning 5.5
import QtLocation 5.6
PlaceSearchSuggestionModel {
id: suggestionModel
plugin: myPlugin
// Brisbane
searchArea: QtPositioning.circle(QtPositioning.coordinate(-27.46778, 153.02778))
onSearchTermChanged: update()
}
ListView {
model: suggestionModel
delegate: Text { text: suggestion }
} См. также PlaceSearchModel и QPlaceManager.
Документация по свойствам
limit : int
Это свойство содержит ограничение количества возвращаемых элементов.
См. также offset.
offset : int
Это свойство содержит индекс первого элемента в модели.
См. также limit.
plugin : Plugin
Это свойство содержит поставщика Plugin, который будет использоваться для выполнения поиска.
searchArea : geoshape
Это свойство содержит область поиска. Результаты предложений поиска, возвращаемые моделью, будут релевантны заданной области поиска.
Если это свойство установлено в geocircle, его свойство radius может быть оставлено без значения, в этом случае Plugin выберет подходящий радиус для поиска.
searchTerm : string
Это свойство содержит частичный поисковый запрос, используемый в запросе.
status : перечисление
Это свойство содержит состояние модели. Оно может быть одним из:
| PlaceSearchSuggestionModel.Null | Запрос поиска не был выполнен. Модель пуста. |
| PlaceSearchSuggestionModel.Ready | Запрос поиска завершен, и результаты доступны. |
| PlaceSearchSuggestionModel.Loading | В настоящее время выполняется запрос поиска. |
| PlaceSearchSuggestionModel.Error | При выполнении предыдущего запроса поиска произошла ошибка. |
suggestions : stringlist
Это свойство содержит список предсказанных поисковых запросов, которые в настоящее время имеются у модели.
Документация по методам
void cancel()
Отменяет текущую операцию получения предложений поиска немедленно и устанавливает состояние модели в PlaceSearchSuggestionModel.Ready. Модель сохраняет любые предложения поиска, которые были у нее до начала операции.
Если операция не выполняется, вызов cancel() не оказывает никакого эффекта.
string errorString()
Это свойство только для чтения содержит текстовое представление последней ошибки модели предложений поиска. Если ошибка не произошла или модель была очищена, возвращается пустая строка.
Пустая строка также может быть возвращена, если произошла ошибка, у которой нет связанного текстового представления.
void reset()
Сбрасывает модель. Все предложения поиска очищаются, любые незавершенные запросы прерываются, и возможные ошибки очищаются. Состояние модели будет установлено в PlaceSearchSuggestionModel.Null.
void update()
Обновляет модель на основе предоставленных параметров запроса. Модель будет заполнена списком предложений поиска для частичного searchTerm и searchArea. Если plugin поддерживает это, могут быть указаны другие параметры, такие как limit и offset. update() отправляет набор параметров для обработки plugin.
Пока модель обновляется, состояние модели status устанавливается в PlaceSearchSuggestionModel.Loading. Если модель успешно обновлена, состояние status устанавливается в PlaceSearchSuggestionModel.Ready, в то время как при неудачном завершении состояние status устанавливается в PlaceSearchSuggestionModel.Error, и модель очищается.
Этот пример демонстрирует использование модели
PlaceSeachSuggestionModel {
id: model
plugin: backendPlugin
searchArea: QtPositioning.circle(QtPositioning.coordinate(10, 10))
...
}
MouseArea {
...
onClicked: {
model.searchTerm = "piz"
model.searchArea.center.latitude = -27.5;
model.searchArea.cetner.longitude = 153;
model.update();
}
} Более подробный пример можно найти в примере Places (QML).
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qml-qtlocation-placesearchsuggestionmodel.html