2013-03-13 111 views
0

我有带圆角按钮图像的按钮图像。我正在平铺图像以在QML中获得更大的按钮。我使用父母作为矩形和图像作为BorderImage。平铺后,我可以看到顶部图像上的矩形。我需要删除矩形的一部分,以便只有舍入的按钮图像(具有透明度)是可见的。即使我需要改变背后矩形的颜色,以便彩色动画是可能的。如何在平铺后QML中获得圆角按钮图像

请建议有效的方法去除后面的矩形并提供彩色动画。

我附上圆角按钮边框图像作为平铺按钮图像的附件和源代码。

Rectangle{ 
id:outerBorderRect 
smooth:true 
anchors.fill:parent 
//opacity:.25 
//border.width:0 
BorderImage{ 

id:innerBorderRect 
smooth:true 
anchors.fill:parent 
border{left:20;top:16;right:17;bottom:20} 
horizontalTileMode:BorderImage.Round 
verticalTileMode:BorderImage.Round 

source:"button_3.png" 

} 
} 
+0

这是众所周知的丢失掩码的问题,我认为它仍然存在于Qt Quick 2中。到目前为止,我遇到的唯一解决方案是使用C++编写自己的QML组件,然后使用它。 – user1095108 2013-03-13 07:35:18

回答

0

一个简单的和半劈办法做到这一点是使用radius财产Rectangle隐藏您的按钮的角落。

或者你可以通过使用Qt的OpacityMask来使用正确的掩码。

我不确定你在找什么样的动画。你必须提供更多的细节让我回答这个部分。