PySide6.QtLocation.QPlaceManager¶
- class QPlaceManager¶
QPlaceManager
类提供了允许客户端访问存储在特定后端中的地点的接口。更多…概要¶
方法¶
def
category()
def
locales()
def
managerName()
def
managerVersion()
def
matchingPlaces()
def
removeCategory()
def
removePlace()
def
saveCategory()
def
savePlace()
def
search()
def
setLocale()
def
setLocales()
信号¶
def
categoryAdded()
def
dataChanged()
def
errorOccurred()
def
finished()
def
placeAdded()
def
placeRemoved()
def
placeUpdated()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
下表概述了
QPlaceManager
提供的功能功能
描述
搜索地点
使用一组参数,如搜索词和搜索区域,可以向用户返回相关的地点。
分类
地点可以被分类为属于不同的类别。管理器支持访问这些类别。
搜索词建议
给定一个部分完成的搜索词,可以提供一组潜在的搜索词。
推荐
给定一个现有的地点,可以向用户推荐一组类似的推荐地点。
富内容
可以以分页方式检索图像、评论等富内容。
地点或类别管理
可以保存和删除地点和类别。当这种情况发生时,可以发出通知。
本地化
可以指定不同的区域设置以返回不同语言的地点数据。
获取QPlaceManager实例¶
创建
QPlaceManager
是通过QGeoServiceProvider
来完成的。请参阅初始化管理器以获取如何创建管理器的示例。异步接口¶
QPlaceManager
类提供了包含地点信息的数据存储的抽象。QPlaceManager
提供的函数主要是异步的,并遵循请求-回复模型。通常,向管理器发出请求,请求由各种参数组成,并创建一个回复对象。回复对象有一个信号,用于在请求完成时通知,一旦完成,回复包含请求的结果以及发生的任何错误(如果有的话)。异步请求通常按以下方式处理:
#1) Make an appropriate request searchRequest = QPlaceSearchRequest() searchRequest.setSearchTerm("ice cream") searchRequest.setSearchArea(QGeoCircle(QGeoCoordinate(12.34, 56.78))) #2) Use the manager to initiate a request and retrieve a reply object QPlaceSearchReply * searchReply = manager.search(searchRequest) #3) Connect the reply object to a slot which is invoked upon operation completion searchReply.finished.connect( self.processSearchReply) ... ... <Code snippet "places/requesthandler.h:Simple search handler" not found>
请参阅常见操作以获取展示如何使用QPlaceManger的示例列表。
类别初始化¶
在应用程序启动期间的某个时候,应该调用
initializeCategories()
函数来设置类别。初始化类别后,可以使用以下函数:如果需要刷新或重新加载类别,可以再次调用
initializeCategories()
函数。- category(categoryId)¶
- Parameters:
categoryId – str
- Return type:
返回与给定
categoryId
对应的类别。- categoryAdded(category, parentId)¶
- Parameters:
类别 –
QPlaceCategory
parentId – str
如果向管理器的数据存储中添加了一个
category
,则会发出此信号。category
的父级由parentId
指定。此信号仅由支持QPlaceManager::NotificationsFeature的管理器发出。
另请参阅
- categoryRemoved(categoryId, parentId)¶
- Parameters:
categoryId – str
parentId – str
当与
categoryId
对应的类别已从管理器的数据存储中移除时,会发出此信号。被移除类别的父类别由parentId
指定。此信号仅由支持QPlaceManager::NotificationsFeature的管理器发出。
另请参阅
- categoryUpdated(category, parentId)¶
- Parameters:
类别 –
QPlaceCategory
parentId – str
如果在管理器的数据存储中修改了一个
category
,则会发出此信号。修改类别的父级由parentId
指定。此信号仅由支持QPlaceManager::NotificationsFeature的管理器发出。
另请参阅
- childCategories([parentId=""])¶
- Parameters:
parentId – str
- Return type:
返回与
parentId
对应的类别的子类别列表。如果parentId
为空,则返回所有顶级类别。- childCategoryIds([parentId=""])¶
- Parameters:
parentId – str
- Return type:
字符串列表
返回与
parentId
对应的类别的子类别标识符。如果parentId
为空,则返回所有顶级类别标识符。返回一个经过修剪或修改的
original
版本,适合保存到此管理器中。只有此管理器支持的场所详细信息才会出现在修改后的版本中。管理器特定的数据,如场所ID,不会从
original
复制过来。- dataChanged()¶
如果管理器的基础数据存储发生大规模更改,并且管理器认为这些更改足够激进,需要客户端重新加载所有数据,则会发出此信号。
如果信号被发出,相关的更改将不会发出其他信号。
此信号仅由支持QPlaceManager::NotificationsFeature的管理器发出。
- errorOccurred(reply, error[, errorString=""])¶
- Parameters:
回复 –
QPlaceReply
错误 –
Error
errorString – str
当在
reply
的处理过程中检测到错误时,会发出此信号。finished()
信号可能会紧随其后。错误将由错误代码
error
描述。如果errorString
不为空,它将包含一个面向开发者的错误文本描述,而不是最终用户。此信号和
errorOccurred()
将同时发出。注意
不要删除连接到这个信号的槽中的
reply
对象。请使用deleteLater()代替。- finished(reply)¶
- Parameters:
回复 –
QPlaceReply
当
reply
完成处理时,会发出此信号。如果 reply->error() 等于
NoError
,则处理成功完成。此信号和
finished()
将同时发出。注意
不要删除连接到这个信号的槽中的
reply
对象。请使用deleteLater()代替。- getPlaceContent(request)¶
- Parameters:
请求 –
QPlaceContentRequest
- Return type:
根据
request
中指定的参数检索地点的内容。请参阅 获取富内容 以查看使用示例。
- getPlaceDetails(placeId)¶
- Parameters:
placeId – str
- Return type:
检索与给定
placeId
对应的地点详细信息。请参阅 获取地点详情 以查看使用示例。
- initializeCategories()¶
- Return type:
初始化管理器的类别。
查看 使用类别 的使用示例。
返回首选语言环境的列表。这些语言环境用作管理器的提示,指示应返回哪种语言的地点和类别详细信息。
如果无法适应第一个指定的语言环境,管理器将回退到下一个,依此类推。一些管理器后端可能不支持严格定义的一组语言环境。一个任意的例子是,法国的一些地方可能有法语和英语的本地化,而美国的某些地区可能只有英语的本地化可用。在这个例子中,支持的语言环境集合取决于搜索位置的上下文。
如果管理器无法适应任何首选区域设置,管理器将回退到使用特定于后端的支持语言。
对语言环境的支持可能因提供商而异。对于那些确实支持它的提供商,默认情况下,全局默认语言环境被设置为管理器的唯一语言环境。
对于不支持区域设置的经理,区域设置列表始终为空。
另请参阅
- managerName()¶
- Return type:
字符串
返回管理员的名称
- managerVersion()¶
- Return type:
整数
返回管理器的版本。
- matchingPlaces(request)¶
- Parameters:
请求 –
QPlaceMatchRequest
- Return type:
返回一个包含与
request
中指定的地点对应/匹配的地点列表的回复。请求中指定的地点来自不同的管理器。- parentCategoryId(categoryId)¶
- Parameters:
categoryId – str
- Return type:
字符串
返回与
categoryId
对应的类别的父类别标识符。- placeAdded(placeId)¶
- Parameters:
placeId – str
如果某个地点已被添加到管理器引擎的数据存储中,则会发出此信号。具体添加的地点由
placeId
指定。此信号仅由支持QPlaceManager::NotificationsFeature的管理器发出。
另请参阅
- placeRemoved(placeId)¶
- Parameters:
placeId – str
如果某个地点已从管理器的数据存储中移除,则会发出此信号。已移除的特定地点由
placeId
指定。此信号仅由支持QPlaceManager::NotificationsFeature的管理器发出。
另请参阅
- placeUpdated(placeId)¶
- Parameters:
placeId – str
如果管理器数据存储中的某个地点被修改,则会发出此信号。特定的修改地点由
placeId
指定。此信号仅由支持QPlaceManager::NotificationsFeature的管理器发出。
另请参阅
- removeCategory(categoryId)¶
- Parameters:
categoryId – str
- Return type:
从管理器中移除与
categoryId
对应的类别。请参阅删除类别以获取使用示例。
- removePlace(placeId)¶
- Parameters:
placeId – str
- Return type:
从管理器中移除与
placeId
对应的地点。请参阅Removing a place cpp以获取使用示例。
- saveCategory(category[, parentId=""])¶
- Parameters:
类别 –
QPlaceCategory
parentId – str
- Return type:
保存一个
category
,它是parentId
指定的类别的子类别。空的parentId
意味着category
被保存为顶级类别。请参阅保存类别以获取使用示例。
保存指定的
place
。请参阅Saving a place cpp以获取使用示例。
- search(query)¶
- Parameters:
查询 –
QPlaceSearchRequest
- Return type:
根据
request
中指定的参数搜索地点。查看 Discovery/Search 的使用示例。
- searchSuggestions(request)¶
- Parameters:
请求 –
QPlaceSearchRequest
- Return type:
根据
request
中指定的参数请求一组搜索词建议。request
可以包含不完整的搜索词,以及其他数据,如搜索区域以缩小相关结果的范围。查看 搜索建议 以获取使用示例。
便利函数,将管理器的首选语言环境列表设置为单个
locale
。- setLocales(locale)¶
- Parameters:
locale – QLocale的列表
设置首选的
locales
列表。另请参阅