class QQuickView#

The QQuickView 类提供了一个用于显示 Qt Quick 用户界面的窗口。 更多信息

Inheritance diagram of PySide6.QtQuick.QQuickView

概要#

属性#

方法#

#

信号#

注意

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

详细描述#

警告

本节包含从 C++ 自动转换为 Python 的代码段,可能包含错误。

这是 QQuickWindow 的便利子类,当给定主源文件的 URL 时,将自动加载和显示 QML 场景。或者,您也可以使用 QQmlComponent 实例化自己的对象,并将它们放置在手动设置的 QQuickWindow 中。

典型用法

if __name__ == "__main__":

    app = QGuiApplication(argc, argv)
    view = QQuickView()
    view.setSource(QUrl.fromLocalFile("myqmlfile.qml"))
    view.show()
    sys.exit(app.exec())

要接收与 QQuickView 加载和执行 QML 相关的错误,您可以连接到 statusChanged() 信号,并监视 Error。错误通过 errors() 可用。

QQuickView 还管理视图和根对象的尺寸。默认情况下,resizeModeSizeViewToRootObject ,它会将组件加载并调整其大小以匹配视图的大小。或者,resizeMode 可以设置为 SizeRootObjectToView,这使得视图根据根对象的大小自动调整大小。

另请参阅

QQuickWidget

ResizeMode#

此枚举指定如何调整视图大小。

常量

说明

QQuickView.SizeViewToRootObject

视图根据 QML 中的根项目进行调整大小。

QQuickView.SizeRootObjectToView

视图将自动将根项目的大小调整为视图大小。

Status#

指定了 QQuickView 的加载状态。

常量

说明

QQuickView.Null

QQuickView 尚未设置源。

QQuickView.Ready

QQuickView 已加载并创建了 QML 组件。

QQuickView.Loading

QQuickView 正在加载网络数据。

QQuickView.Error

发生了一个或多个错误。调用 errors() 以检索错误列表。

注意

当使用 from __feature__ import true_property 时可以直接使用属性,否则通过访问器函数。

属性resizeMode: QQuickView.ResizeMode#

此属性表示视图是否应该调整窗口内容的大小。

如果此属性设置为 SizeViewToRootObject(默认值),视图将调整大小以适应 QML 中的根项的大小。

如果此属性设置为 SizeRootObjectToView,视图将自动调整根项的大小以适应视图的大小。

另请参阅

initialSize()

访问函数
属性source: QUrl#

此属性保存 QML 组件的源 URL。

请确保提供的 URL 是完整和正确的,特别是当从本地文件系统加载文件时,请使用 QUrl::fromLocalFile()。

请注意,即使 URL 与当前值未更改,设置源 URL 也会导致 QML 组件的实例化。

访问函数
属性status: QQuickView.Status#

组件的当前 status

访问函数
__init__(engine, parent)#
参数:

使用给定的 QML engineparent 构造一个 QQuickView

注意:在这种情况下,QQuickView 并不拥有给定的 engine 对象;销毁引擎的责任在于调用者。如果 engine 在视图中之前被删除,status() 将返回 Error

另请参阅

Status status() errors()

__init__([parent=None])
参数:

parentQWindow

使用给定的 parent 构造一个 QQuickView。默认的 parent 值是 0。

__init__(source, renderControl)
参数:
__init__(source[, parent=None])
参数:

使用给定的 QML sourceparent 构造一个 QQuickView。默认的 parent 值是 nullptr

__init__(uri, typeName[, parent=None])
参数:
  • uri – 字符串

  • typeName – 字符串

  • parentQWindow

使用指定的 uritypeName 以及父对象 parent 构建一个 QQuickView 对象。默认的 parent 值是 nullptr

另请参阅

loadFromModule

engine()#
返回类型

QQmlEngine

返回用于实例化 QML 组件的 QQmlEngine 的指针。

errors()#
返回类型

. QQmlError 列表

返回在上次编译或创建操作中出现错误列表。当状态不是错误时,返回空列表。

initialSize()#
返回类型

QSize

返回根对象的初始大小。

如果 resizeMode 是 QQuickItem::SizeRootObjectToView,则根对象将被调整到视图的大小。initialSize 包含调整大小前的根对象的大小。

loadFromModule(uri, typeName)#
参数:
  • uri – 字符串

  • typeName – 字符串

加载由 uritypeName 标识的 QML 组件。如果组件由 QML 文件支持,则 source 将相应设置。对于在 C++ 中定义的类型,source 为空。

如果在此方法被调用之前设置了任何 source,它将被清除。

多次使用相同的 uritypeName 调用此方法将导致 QML 组件被重新实例化。

另请参阅

setSource loadFromModule

resizeMode()#
返回类型

ResizeMode

另请参阅

setResizeMode()

属性 resizeMode 的获取器。

rootContext()#
返回类型

QQmlContext

此函数返回上下文层次结构的根。每个 QML 组件都在 QQmlContext 中实例化。QQmlContext 对于将数据传递给 QML 组件是必不可少的。在 QML 中,上下文以分层方式排列,该层次结构由 QQmlEngine 管理的。

rootObject()#
返回类型

QQuickItem

返回视图的根 项目

setContent(url, component, item)#
参数:
setInitialProperties(initialProperties)#
参数:

initialProperties – 键为 QString 类型,值为 QVariant 类型的字典。

警告

本节包含从 C++ 自动转换为 Python 的代码段,可能包含错误。

使用初始属性 initialProperties 设置 QML 组件初始化后调用的 setSource()

view = { QQuickView() }
view.setInitialProperties({"x, 100"}, {"width", 50})
view.setSource(QUrl.fromLocalFile("myqmlfile.qml"))
view.show()

注意

只能使用此函数来初始化顶级属性。

注意

应始终在调用 setSource 之前调用此函数,因为一旦组件变为 Ready,它将没有效果。

setResizeMode(arg__1)#
参数:

arg__1ResizeMode

另请参阅

resizeMode()

属性 resizeMode 的设置器。

setSource(arg__1)#
参数:

arg__1QUrl

将源设置为 url,加载 QML 组件并实例化它。

请确保提供的 URL 是完整和正确的,特别是当从本地文件系统加载文件时,请使用 QUrl::fromLocalFile()。

多次调用此方法并使用相同的 url 将导致 QML 组件被重新实例化。

另请参阅

source()

设置属性 source 的设置器。

sizeHint()#
返回类型

QSize

source()#
返回类型

QUrl

如果已设置,返回源URL。

另请参阅

setSource()

属性 sourceᅟ 的获取器。

status()#
返回类型

状态

属性 statusᅟ 的获取器。

statusChanged(arg__1)#
参数:

arg__1Status

当组件当前的状态发生变化时,发出此信号。

属性 statusᅟ 的通知信号。