Qml的Item作为其他控件的根,属性里面提供了ImplicitWidth和imlicitHeight与width和height属性。根据解释,implicit*是自然尺寸大小,默认为0,其目的是如果没有设置width和height的时候会使用这个值。但是有个问题就是设置implicit*与Width等的区别是什么呢?
这个问题还没有完全想明白,但有一个情况可以区分:
Loader{
anchors.fill:parent
sourceComponent:content
}
Component{
id:content
Item{
Row{
Text{
text:"test text"
}
Image{
source:"image"
}
}
}
}
这段代码运行的时候并没有现实完整text和image,因为Loader有个属性,如果其设置了大小,则让其loader的内容适配自己,否则就让自己适配需要加载的控件。而其使用的属性应该使用的就是inplict值,而外侧的Item的这两个值默认都是0,所以显示是不对的。
本文出自 “zhouhb” 博客,请务必保留此出处http://hongbin0720.blog.51cto.com/3305400/1403360
qml implictWidth与width 使用思考,布布扣,bubuko.com
原文:http://hongbin0720.blog.51cto.com/3305400/1403360