PySide6.QtLocation.QPlace

class QPlace

QPlace 类表示一组关于地点的数据。更多

概要

方法

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。

详细描述

警告

本节包含从C++自动翻译到Python的代码片段,可能包含错误。

一个地方是一个兴趣点,它可能是一家喜欢的餐厅、一个公园或某人的家。QPlace对象通过作为该地方各种信息的容器来表示一个地方。

这些信息可以分为两大类

  • 详情

  • 丰富的内容

地点详情包括地点的属性,如名称、位置、联系信息等。当在搜索中返回一个地点时,这些详情会被填充。有时为了节省带宽,如果用户感兴趣,可以逐个地点检索有关地点的更多详情。可以查询detailsFetched()函数以查看是否已获取所有可用的详情,如果没有,可以使用getPlaceDetails()来检索它们。在搜索期间填充哪些详情以及哪些需要单独获取可能因提供商而异。有关更多详情,请参阅插件文档

一个地方的丰富内容包括图片、评论和社论等项目。可能会有许多丰富的内容项,因此它们与地方的详细信息分开处理。可以通过getPlaceContent()以分页方式检索它们。如果需要,可以将内容分配给一个地方,以便它可以作为一个方便的容器。

联系信息

一个地方的联系信息基于一组常见的contact types。要检索一个地方的所有电话号码,可以这样做:

if place.contactTypes().contains(QPlaceContactDetail.Phone):
    for number in place.contactDetails(QPlaceContactDetail.Phone):
        print(number.label(), ":", number.value())

联系类型设计为字符串值,以便提供商可以引入新的联系类型。

为了方便起见,有一组函数可以返回每种类型的第一个联系方式的详细信息。

扩展属性

地点可能具有正式API中未涵盖的附加属性。与联系人属性类似,这些属性基于一组常见的attribute types。要检索扩展属性,可以执行以下操作:

if place.extendedAttributeTypes().contains(QPlaceAttribute.OpeningHours):
    print(place.extendedAttribute(QPlaceAttribute.OpeningHours).text())

属性类型设计为字符串值,以允许提供者引入新的属性类型。

内容

QPlace 对象仅用于作为方便的容器,用于保存丰富的内容,如图片、评论等。内容的检索应通过 getPlaceContent() 进行。

内容存储为Collection,其中包含内容的索引以及内容本身。这使得开发人员能够检查某个特定项目是否已被检索,如果没有,则可以请求该内容。

归属

地点有一个字段用于富文本归属字符串。某些提供商可能要求在向用户显示地点时显示归属信息。

分类

可以为地点分配不同的类别,以表明该地点与这些类别相关联。保存地点时,唯一有意义的数据是类别ID,其余的类别数据实际上会被忽略。在保存地点之前,类别必须已经存在(不可能创建一个新类别,将其分配给地点,保存地点并期望类别被创建)。

保存注意事项

Places API 目前仅设计用于保存 核心 详细信息。保存图像和评论等丰富内容或供应商和评级等详细信息不是受支持的使用场景。通常,管理器在保存时会忽略这些字段,如果这些字段被填充,可能会产生警告消息。

Places API 仅支持保存以下核心细节

  • 名称

  • 地点 ID

  • 位置

  • 联系方式

  • 图标

  • categories(用于描述地点的标签式名称)

  • 可见性范围

可能提供者只支持这些功能的一部分。有关更多详细信息,请参阅插件文档

Places API 明确不支持保存诸如评分、扩展属性、图片、评论、编辑内容和供应商等属性。

__init__()

构造一个空的占位符对象。

__init__(other)
Parameters:

其他QPlace

构造other的副本。

appendContactDetail(contactType, detail)
Parameters:

附加指定contactType的联系人detail

请参阅QPlaceContactDetail以获取常见联系类型的列表。

attribution()
Return type:

字符串

返回地点的富文本归属字符串。请注意,某些提供商可能有要求,即每当向最终用户显示地点时,必须显示归属信息。

另请参阅

setAttribution()

categories()
Return type:

QPlaceCategory的列表

返回此地点所属的类别。

另请参阅

setCategories()

contactDetails(contactType)
Parameters:

contactType – str

Return type:

QPlaceContactDetail的列表

返回指定contactType的联系方式列表。

查看 QPlaceContactDetail 获取常见 联系类型 的列表。

另请参阅

setContactDetails()

contactTypes()
Return type:

字符串列表

返回此地点拥有的联系信息类型。

请参阅QPlaceContactDetail以获取常见联系类型的列表。

content(type)
Parameters:

类型Type

Return type:

字典的键类型为 .int,值类型为 QPlaceContent。

返回与地点相关联的内容集合。此集合是一个映射,其中键是内容对象的索引,值是内容对象本身。

type 指定要检索的内容类型。

另请参阅

setContent()

detailsFetched()
Return type:

布尔

如果已获取此地点的详细信息,则返回 true,否则返回 false。

另请参阅

setDetailsFetched()

extendedAttribute(attributeType)
Parameters:

attributeType – str

Return type:

QPlaceAttribute

返回与指定的attributeType对应的扩展属性。如果该地点没有该特定属性类型,则返回默认构造的QPlaceExtendedAttribute。

另请参阅

setExtendedAttribute()

extendedAttributeTypes()
Return type:

字符串列表

返回此地点具有的扩展属性类型。

icon()
Return type:

QPlaceIcon

返回地点的图标。

另请参阅

setIcon()

insertContent(type, content)
Parameters:
  • type类型

  • content – 字典,键类型为 .int,值类型为 QPlaceContent。

将给定typecontent集合添加到位置中。content中已经存在的任何索引将被覆盖。

isEmpty()
Return type:

布尔

返回一个布尔值,指示该位置的所有字段是否为空。

location()
Return type:

QGeoLocation

返回地点的位置。

另请参阅

setLocation()

name()
Return type:

字符串

返回地点的名称。

另请参阅

setName()

__ne__(rhs)
Parameters:

rhsQPlace

Return type:

布尔

如果 lhs 不等于 rhs,则返回 true,否则返回 false。

__eq__(rhs)
Parameters:

rhsQPlace

Return type:

布尔

如果 lhs 等于 rhs,则返回 true,否则返回 false。

placeId()
Return type:

字符串

返回地点的标识符。地点标识符仅对生成它的QPlaceManager有意义,并且不能在管理器之间转移。地点标识符不保证是全局唯一的,但对于生成它的管理器来说是唯一的。

另请参阅

setPlaceId()

primaryEmail()
Return type:

字符串

返回此地点的主要电子邮件地址。此便捷函数访问电子邮件类型的第一个联系详细信息。如果不存在电子邮件地址,则返回空字符串。

primaryFax()
Return type:

字符串

返回此地点的主要传真号码。此便捷函数访问传真类型的第一个联系详细信息。如果不存在传真详细信息,则返回空字符串。

primaryPhone()
Return type:

字符串

返回此地点的主要电话号码。这将访问电话号码类型的第一个联系详情。如果没有电话号码详情存在,则返回一个空字符串。

primaryWebsite()
Return type:

QUrl

返回该地点的主要网站。此便捷函数访问网站类型的第一个联系详情。如果不存在网站,则返回空字符串。

ratings()
Return type:

QPlaceRatings

返回该地点的综合评分。

另请参阅

setRatings()

removeContactDetails(contactType)
Parameters:

contactType – str

移除给定contactType的所有联系信息。

当调用contactTypes()时,contactType不再返回。

removeExtendedAttribute(attributeType)
Parameters:

attributeType – str

从地方移除attributeType的属性。

该属性将不再由extendedAttributeTypes()列出

setAttribution(attribution)
Parameters:

attribution – str

设置地点的attribution字符串。

另请参阅

attribution()

setCategories(categories)
Parameters:

categories – QPlaceCategory 的列表

设置此地点所属的categories

另请参阅

categories()

setCategory(category)
Parameters:

类别QPlaceCategory

设置此地点所属的单个category

setContactDetails(contactType, details)
Parameters:
  • contactType – str

  • details – QPlaceContactDetail 的列表

设置指定contactType的联系details

如果 details 为空,则从地点中移除 contactType,使其不再由 contactTypes() 返回。

查看 QPlaceContactDetail 获取常见 联系类型 的列表。

另请参阅

contactDetails()

setContent(type, content)
Parameters:
  • type类型

  • content – 字典,键类型为 .int,值类型为 QPlaceContent。

为给定的type设置一组content

另请参阅

content()

setDetailsFetched(fetched)
Parameters:

fetched – 布尔值

设置此地点的详细信息是否已被fetched

另请参阅

detailsFetched()

setExtendedAttribute(attributeType, attribute)
Parameters:

将给定的attributeTypeattribute分配给一个地方。如果给定的attributeType已经存在于该地方,则它将被覆盖。

如果 attribute 是默认构造的 QPlaceAttribute,那么 attributeType 将从地点中移除,这意味着它将不会在 extendedAttributeTypes() 中列出。

另请参阅

extendedAttribute()

setIcon(icon)
Parameters:

图标QPlaceIcon

设置地点的icon

另请参阅

icon()

setLocation(location)
Parameters:

位置QGeoLocation

设置地点的location

另请参阅

location()

setName(name)
Parameters:

name – str

设置地点的name

另请参阅

name()

setPlaceId(identifier)
Parameters:

identifier – str

设置地点的identifier

另请参阅

placeId()

setRatings(ratings)
Parameters:

评分QPlaceRatings

设置地点的聚合rating

另请参阅

ratings()

setSupplier(supplier)
Parameters:

供应商QPlaceSupplier

将此地点的供应商设置为 supplier

另请参阅

supplier()

setTotalContentCount(type, total)
Parameters:
  • type类型

  • total – int

设置给定type的内容对象的totalCount

另请参阅

totalContentCount()

supplier()
Return type:

QPlaceSupplier

返回此地的供应商。

另请参阅

setSupplier()

swap(other)
Parameters:

其他QPlace

totalContentCount(type)
Parameters:

类型Type

Return type:

整数

返回给定type的内容对象的总数。此总数表示管理器/提供者应有多少可用内容。(与此地点实例当前分配的对象数量相对)。

负数表示项目总数未知。默认情况下,总内容计数设置为0。

另请参阅

setTotalContentCount()