QML对象构造顺序
一、同一层
与代码编写顺序相反,如下图构造顺序是:item_2->item_1
ps:虽然item_2比item_1先构造,但是布局的时候item_1可以使用其他item_2的属性【x、y等】
二、不同层
从里到外,如下图构造顺序是:rect_1->rect1
三、QML继承
//A.qml Item { consloe.log("A") } //B.qml A { consloe.log("B") }
先打印A,再打印B,即先调用基类再调用子类
四、QML中有C++类
Item {
CPPClass {
property: 123
}
}
先调用CPPClass的构造函数,再传值【property】过去,最后调用Item的构造。
需要注意这种情况,我们可能需要传一个QML对象到CPPClass中,然后希望在C++的构造函数中访问这个qml对象,根据这个构造顺序我们在C++构造函数中访问qml对象时它还没有传过来,所以需要加一个延时。。。
长风破浪会有时,直挂云帆济沧海!
可通过下方链接找到博主
https://www.cnblogs.com/judes/p/10875138.html