# 小结
在本章中,研究了动态创建QML元素。这使得可以自由地创建QML场景,为用户打开了基于配置和插件的架构的大门。
动态加载QML元素的最简单方法是使用Loader
元素,它充当正在加载内容的占位符。
对于更动态的方法,Qt.createQmlObject
函数可用于将QML字符串实例化。然而,这种方法确实有局限性。完整的解决方案是使用Qt.createComponent
函数动态创建一个Component
,然后通过调用Component
的createObject
函数来创建对象。
由于绑定、信号连接、对对象实例化的访问都依赖于对象id
的存在,因此必须为动态创建的对象使用另一种方法。要创建绑定,使用Binding
元素;Connections
元素可以连接到动态创建的对象的信号。
使用动态创建的项目的挑战之一是跟踪它们,这可以使用模型来完成。通过模型跟踪动态创建的项目,可以实现序列化和反序列化功能,从而可以存储和恢复动态创建的场景。
← 跟踪动态对象 JavaScript →