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