【发布时间】:2016-10-12 07:43:01
【问题描述】:
我有两个堆叠的物品。这两个项目都有一个半透明的背景。圆圈现在显示下面的圆角矩形。
有什么方法可以隐藏与圆圈重叠的长圆角矩形部分?也许改变父级,圆的背景是从更高的祖先那里拉出来的,因此忽略它下面的矩形?
代码如下:
Item
{
id: choice1
width: 300
height: 100
Rectangle
{
id: choiceLabel1
width: 0
height: parent.height / 1.5
radius: parent.height * 0.5
color: "#88808080"
anchors
{
verticalCenter: choice1.verticalCenter
left: choice1.left
leftMargin: choiceIcon1.width / 2
}
border
{
width: 2
color: "red"
}
}
Rectangle
{
id: choiceIcon1
width: choice1.height
height: choice1.height
radius: width * 0.5
color: "#88808080"
anchors
{
verticalCenter: choice1.verticalCenter
left: choice1.left
}
border
{
width: 2
color: "red"
}
}
}
【问题讨论】:
-
这样使用不让用户看到背后是什么 opacity的最终目的是什么?
-
长矩形不显示,并且您的代码由于缺少类型而无法运行。
-
不,不是同一个问题。这里的不透明度也不是继承的。我想控制哪些元素在不透明度下可见。
-
没有比定义自定义几何图形或自己绘画更简单的方法了。但是,可以在此处部分应用该其他链接中的解决方案 - 在包裹两个矩形的 Item 上设置
layer.enabled: true,在该 Item 上设置不透明度,并删除各个矩形上的不透明度。