Модель предложений поиска мест QML
Предоставляет доступ к предложениям по поисковым запросам. Подробнее...
| Заявление об импорте: | import QtLocation 5.3 |
| С момента: | Qt Location 5.5 |
Свойства
- limit : int
- offset : int
- plugin : Плагин
- searchArea : геоформа
- searchTerm : строка
- status : перечисление
- suggestions : список строк
Методы
- void cancel()
- string errorString()
- void reset()
- void update()
Подробное описание
Модель PlaceSearchSuggestionModel может использоваться для предоставления предложений по поисковым запросам по мере ввода пользователем своего поискового запроса. Свойства этой модели должны соответствовать свойствам PlaceSearchModel, который будет использоваться для выполнения фактического поискового запроса, чтобы гарантировать, что результаты предложений поиска будут актуальными.
Существует два способа доступа к данным, предоставляемым этой моделью: либо через свойство suggestions, либо через представления и делегаты. Последний способ предпочтительнее.
Свойства offset и limit могут использоваться для доступа к постраничным предложениям. Когда свойства offset и limit установлены, предложения между offset и (offset + limit - 1) будут возвращены. Поддержка постраничности может варьироваться в зависимости от плагина.
Модель возвращает данные для следующих ролей:
| Роль | Тип | Описание |
|---|---|---|
| suggestion | строка | Предлагаемый поисковый запрос. |
Следующий пример демонстрирует, как использовать 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 : Плагин
Это свойство содержит поставщика Плагин, который будет использоваться для выполнения поиска.
searchArea : геоформа
Это свойство содержит область поиска. Результаты предложений по поиску, возвращаемые моделью, будут актуальны для заданной области поиска.
Если это свойство установлено в геокруг, его свойство radius может быть оставлено не заданным, в этом случае Плагин выберет подходящий радиус для поиска.
searchTerm : строка
Это свойство содержит частичный поисковый запрос, используемый в запросе.
status : перечисление
Это свойство содержит состояние модели. Оно может быть одним из:
| PlaceSearchSuggestionModel.Null | Не было выполнено ни одного поискового запроса. Модель пуста. |
| PlaceSearchSuggestionModel.Ready | Поисковый запрос завершен, и результаты доступны. |
| PlaceSearchSuggestionModel.Loading | В настоящее время выполняется поисковый запрос. |
| PlaceSearchSuggestionModel.Error | При выполнении предыдущего поискового запроса произошла ошибка. |
suggestions : список строк
Это свойство содержит список прогнозируемых поисковых запросов, которые в настоящее время имеет модель.
Документация по методам
void cancel()
Немедленно отменяет текущую операцию предложения поиска и устанавливает состояние модели в PlaceSearchSuggestionModel.Ready. Модель сохраняет любые предложения поиска, которые у неё были до начала операции.
Если операция не выполняется, вызов cancel() не оказывает никакого влияния.
строка errorString() const
Это свойство только для чтения содержит текстовое представление последней ошибки модели предложений поиска. Если ошибка не произошла или модель была очищена, возвращается пустая строка.
Пустая строка может также быть возвращена, если произошла ошибка, для которой нет связанного текстового представления.
void reset()
Сбрасывает модель. Все предложения поиска очищаются, любые ожидающие запросы прерываются, а возможные ошибки очищаются. Состояние модели будет установлено в PlaceSearchSuggestionModel.Null.
void update()
Обновляет модель на основе предоставленных параметров запроса. Модель будет заполнена списком предложений поиска для частичного searchTerm и searchArea. Если плагин поддерживает это, могут быть указаны другие параметры, такие как limit и offset. update() передает набор параметров плагину для обработки.
Пока модель обновляется, состояние модели 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.9/qml-qtlocation-placesearchsuggestionmodel.html