Тип QML PlaceSearchSuggestionModel
Предоставляет доступ к предложениям по поисковым запросам. Подробнее...
| Заявление об импорте: | import QtLocation 5.11 |
| С момента: | 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/archives/qt-5.11/qml-qtlocation-placesearchsuggestionmodel.html