PlaceSearchSuggestionModel QML 类型
提供对搜索词建议的访问。 更多...
导入语句 | import QtLocation 6.7 |
自从 | QtLocation 5.5 |
属性
- limit : int
- offset : int
- plugin : Plugin
- searchArea : geoshape
- searchTerm : string
- status : enum
- 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 import QtPositioning import QtLocation 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。
属性文档
searchArea : geoshape |
searchTerm : string |
此属性表示查询中使用的部分搜索词。
状态 : enum |
此属性表示模型的状态。可以是以下之一
PlaceSearchSuggestionModel.Null | 尚未执行搜索查询。模型为空。 |
PlaceSearchSuggestionModel.Ready | 搜索查询已完成,结果可用。 |
PlaceSearchSuggestionModel.Loading | 当前正在执行搜索查询。 |
PlaceSearchSuggestionModel.Error | 在执行上一个搜索查询时发生错误。 |
建议 : stringlist |
此属性表示模型当前具有的预测搜索词列表。
方法文档
void cancel() |
立即取消正在进行的搜索建议操作,并将模型状态设置为 PlaceSearchSuggestionModel.Ready。模型保留在操作开始之前所拥有的任何搜索建议。
如果没有正在进行的操作,调用 cancel() 无效。
string errorString() |
此只读属性表示最新搜索建议模型错误的文本表示。如果没有发生错误或模型已被清除,则返回空字符串。
如果发生错误但没有任何相关的文本表示,也可能返回空字符串。
void reset() |
重置模型。清除所有搜索建议,取消任何待处理的请求,并清除可能出现的错误。模型状态将设置为 PlaceSearchSuggestionModel.Null。
void update() |
根据提供的查询参数更新模型。模型将填充一个针对部分searchTerm和searchArea的搜索建议列表。如果插件支持,还可以指定其他参数,例如limit和offset。update()
将参数集提交给插件进行处理。
在模型更新期间,模型的状态设置为PlaceSearchSuggestionModel.Loading
。如果模型成功更新,则状态设置为PlaceSearchSuggestionModel.Ready
,如果未成功完成,则状态设置为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)示例中找到。
© 2024 Qt公司。本文档中包含的文档贡献是各自所有者的版权。本文档根据自由软件基金会发布的GNU自由文档许可证版本1.3的条款授权。Qt及其相关标志是芬兰及其他国家和地区的Qt公司的商标。所有其他商标均为其各自所有者的财产。