PySide6.QtQuick.QQuickView¶
- class QQuickView¶
QQuickView
类提供了一个用于显示 Qt Quick 用户界面的窗口。更多…概要¶
属性¶
resizeModeᅟ
- 视图是否应调整窗口内容的大小sourceᅟ
- QML组件的源URL
方法¶
def
__init__()
def
engine()
def
errors()
def
initialSize()
def
resizeMode()
def
rootContext()
def
rootObject()
def
setResizeMode()
def
sizeHint()
def
source()
def
status()
插槽¶
def
loadFromModule()
def
setContent()
def
setSource()
信号¶
def
statusChanged()
注意
本文档可能包含从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())
要接收与加载和执行QML相关的错误,您可以连接到
statusChanged()
信号并监控Error
。错误可以通过errors()
获取。QQuickView
还管理视图和根对象的大小调整。默认情况下,resizeMode
是SizeViewToRootObject
,这将加载组件并将其大小调整为视图的大小。或者,resizeMode
可以设置为SizeRootObjectToView
,这将调整视图的大小以适应根对象的大小。另请参阅
- class ResizeMode¶
此枚举指定如何调整视图的大小。
常量
描述
QQuickView.SizeViewToRootObject
视图会随着QML中的根项目调整大小。
QQuickView.SizeRootObjectToView
视图将自动调整根项目的大小以适应视图的大小。
- class Status¶
指定
QQuickView
的加载状态。常量
描述
QQuickView.Null
这个
QQuickView
没有设置源。QQuickView.Ready
这个
QQuickView
已经加载并创建了 QML 组件。QQuickView.Loading
这个
QQuickView
正在加载网络数据。QQuickView.Error
发生了一个或多个错误。调用
errors()
以检索错误列表。
注意
当使用
from __feature__ import true_property
时,属性可以直接使用,否则通过访问器函数使用。- property resizeModeᅟ: QQuickView.ResizeMode¶
此属性决定视图是否应调整窗口内容的大小。
如果此属性设置为
SizeViewToRootObject
(默认值),视图将调整为 QML 中根项目的大小。如果此属性设置为
SizeRootObjectToView
,视图将自动调整根项目的大小以适应视图的大小。另请参阅
- Access functions:
此属性保存QML组件源的URL。
确保提供的URL是完整且正确的,特别是从本地文件系统加载文件时,使用QUrl::fromLocalFile()。
请注意,设置源URL将导致QML组件被实例化,即使URL与当前值未发生变化。
- Access functions:
- property statusᅟ: QQuickView.Status¶
组件的当前
status
。- Access functions:
使用给定的
parent
构造一个QQuickView
。parent
的默认值为0。- __init__(engine, parent)
- Parameters:
engine –
QQmlEngine
parent –
QWindow
使用给定的QML
engine
和parent
构造一个QQuickView
。注意:在这种情况下,
QQuickView
并不拥有给定的engine
对象;销毁引擎是调用者的责任。如果engine
在视图之前被删除,status()
将返回Error
。- __init__(source, renderControl)
- Parameters:
source –
QUrl
renderControl –
QQuickRenderControl
使用给定的QML
source
和parent
构造一个QQuickView
。parent
的默认值为nullptr
。- __init__(uri, typeName[, parent=None])
- Parameters:
uri – 字符串
typeName – str
parent –
QWindow
使用由
uri
和typeName
指定的元素以及父级parent
构造一个QQuickView
。parent
的默认值为nullptr
。另请参阅
- engine()¶
- Return type:
返回一个指向用于实例化QML组件的QQmlEngine的指针。
返回在上次编译或创建操作期间发生的错误列表。当状态不是错误时,返回一个空列表。
返回根对象的初始大小。
如果
resizeMode
是 QQuickItem::SizeRootObjectToView,根对象将被调整为视图的大小。initialSize 包含调整大小前根对象的大小。- loadFromModule(uri, typeName)¶
- Parameters:
uri – 字符串
typeName – str
加载由
uri
和typeName
标识的QML组件。如果组件由QML文件支持,source
将相应设置。对于在C++
中定义的类型,source
将为空。如果在调用此方法之前设置了任何
source
,它将被清除。多次使用相同的
uri
和typeName
调用此方法将导致QML组件被重新实例化。另请参阅
setSource
loadFromModule
- resizeMode()¶
- Return type:
另请参阅
属性
resizeModeᅟ
的获取器。- rootContext()¶
- Return type:
此函数返回上下文层次结构的根。每个QML组件都在QQmlContext中实例化。QQmlContext对于将数据传递给QML组件至关重要。在QML中,上下文按层次结构排列,此层次结构由QQmlEngine管理。
- rootObject()¶
- Return type:
返回视图的根
item
。- setContent(url, component, item)¶
- Parameters:
url –
QUrl
组件 –
QQmlComponent
项目 –
QObject
- setInitialProperties(initialProperties)¶
- Parameters:
initialProperties – 字典,键类型为 .QString,值类型为 QVariant。
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
设置初始属性
initialProperties
,在调用setSource()
后,QML 组件将使用这些属性进行初始化。view = { QQuickView() } view.setInitialProperties({"x, 100"}, {"width", 50}) view.setSource(QUrl.fromLocalFile("myqmlfile.qml")) view.show()
注意
您只能使用此函数来初始化顶级属性。
- setResizeMode(arg__1)¶
- Parameters:
arg__1 –
ResizeMode
另请参阅
属性
resizeModeᅟ
的设置器。将源设置为
url
,加载QML组件并实例化它。确保提供的URL是完整且正确的,特别是从本地文件系统加载文件时,使用QUrl::fromLocalFile()。
多次使用相同的url调用此方法将导致QML组件被重新实例化。
另请参阅
属性
sourceᅟ
的设置器。如果设置了,返回源URL。
另请参阅
属性
sourceᅟ
的获取器。属性
statusᅟ
的获取器。当组件的当前
status
发生变化时,会发出此信号。属性
statusᅟ
的通知信号。