Тип QML PlaceSearchSuggestionModel
Обеспечивает доступ к предложениям по поисковым запросам. Подробнее...
| Заявление об импорте: | import QtLocation 5.14 |
| С момента: | QtLocation 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 : геоформа
Это свойство содержит область поиска. Результаты поиска, возвращаемые моделью, будут соответствовать заданной области поиска.
Если это свойство имеет значение geocircle, его свойство radius может быть оставлено без значения, в этом случае плагин выберет подходящий радиус для поиска.
searchTerm : строка
Это свойство содержит частичный поисковый запрос, используемый в запросе.
status : перечисление
Это свойство содержит состояние модели. Оно может быть одним из следующих:
| PlaceSearchSuggestionModel.Null | Поисковый запрос не был выполнен. Модель пуста. |
| PlaceSearchSuggestionModel.Ready | Поисковый запрос завершен, и результаты доступны. |
| PlaceSearchSuggestionModel.Loading | В настоящее время выполняется поисковый запрос. |
| PlaceSearchSuggestionModel.Error | При выполнении предыдущего поискового запроса произошла ошибка. |
suggestions : список строк
Это свойство содержит список предсказанных поисковых запросов, которыми в настоящее время обладает модель.
Документация по методам
void cancel()
Немедленно отменяет операцию поиска предложений и устанавливает состояние модели в PlaceSearchSuggestionModel.Ready. Модель сохраняет все предложения по поиску, которые у нее были до начала операции.
Если операция не выполняется, вызов cancel() не имеет эффекта.
строка errorString()
Это свойство только для чтения содержит текстовое представление последней ошибки модели поиска предложений. Если ошибка не произошла или модель была очищена, возвращается пустая строка.
Пустая строка также может быть возвращена, если произошла ошибка, у которой нет связанного текстового представления.
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();
}
}
Более подробный пример можно найти в примере Места (QML).
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qml-qtlocation-placesearchsuggestionmodel.html