您的位置:首页 > 其它

QML基本可视元素-Item

2015-04-27 23:20 190 查看
Item:

QML中所有可视项目都继承自Item。

Item本身没有可视化外观,但它定义了可视化项目的所有属性(如位置x, y属性,大小width, height属性,布局的anchors相关属性以及关于按键的Keys属性等)

Item的visible属性,将其设置为false可以隐藏项目,默认为true

1. 作为容器

Item 也常用来对项目进行分组
Item {
Image {
source: "tile.png"
}
Image {
x: 80
width: 100
height: 100
source: "tile.png"
}
Image {
x: 190
width: 100
height: 100
//图片填充模式
fillMode: Image.tile
source: "tile.png"
}
}


2. 默认属性

Item 中有一个child属性和一个resources属性,前者包含了可见的子类的列表,后者包含了不可见的资源。

编程中可以向一个项目中添加任何元素

Item {
children: [
Text {},
Rectangle{}
]
resources: [
Timer {}
]
}


Item有个data默认属性,可加可见子类和不可见资源,data为默认属性,可以省略data标签

Item {
Text {}
Rectangle{}
Timer {}
}  //没有逗号隔开

3. 透明度

Item属性opacity,可以设置透明度,范围是0.0(完全透明)到1.0(完全不透明)之间的数字,默认值是1.0。

4. 堆叠顺序

Item拥有一个z属性,可以用来设置兄弟项目的堆叠顺序。默认的堆叠顺序0。拥有较大z属性值得项目会绘制在比其z值小的兄弟项之上。拥有相同的z属性值得项目会以出现的顺序右下向上绘制。如果项目的z属性值为负值,那么会被绘制在父项目的内容的下面。

5. 定位子项目和坐标映射

Item中提供了childAt(real x, real y)函数来返回在点(x, y)处的子项目,如果没有这样的项目则返回null。而mapFromItem(Itemitem, real x, real y)函数会将item坐标系统 中的点(x,y)隐射到该项目的坐标系统上,返回一个包含映射后的x和y属性的对象。如果item被指定为null值,那么会从根QML视图坐标系统上的点进行映射。对应的还有一个mapToItem(Itemitem, real x, real y)函数,它与mapFromItem()很相似,只不过是从当前项目坐标系统的(x,
y)点隐射到item的坐标系统而已。

备注:《Qt及Qt Quick开发实战精解》笔记
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: