QML中的API是否与QT的setMask()API类似?

时间:2011-10-15 08:35:27

标签: qt qml

我们希望使QML矩形的特定区域透明。

在QT的情况下,为了做同样的事情,我们使用了QWidget的setMask API。

QML中是否有任何相同的API。

我觉得我们可以使用QML矩形传递给QT cpp文件并在矩形上使用setMask()API,但是这可能吗?

谢谢, Abhijeet Shah

3 个答案:

答案 0 :(得分:1)

我不知道有什么要做的。除非我们只谈论矩形。

无论如何,您可能想尝试使用QML Arsenal中的MaskedImage:https://github.com/omailson/qml-maskeditem或MaskedItem,它们似乎可用:https://bugreports.qt.io/browse/QTCOMPONENTS-388

答案 1 :(得分:0)

我担心唯一的方法就是制作你自己的QDeclarativeItem并使用C ++函数为你的Item添加一个遮罩。

支持在普通QML项目中进行屏蔽是suggested给QT开发人员,据报道,将在QtQuick 2.0中发布。

答案 2 :(得分:0)

尝试渐变:

Gradient{
  id: id
  GradientStop { position: 0.0; color: "transparent" }
  GradientStop { position: 0.9; color: "transparent" }
  GradientStop { position: 1.0; color: "red"}
}