QML中是否有类似于QT的setMask() API的API?
我们想要使 QML 矩形的特定区域透明。
对于 QT,为了做同样的事情,我们使用了 QWidget 的 setMask API。
QML 中是否有具有相同功能的 API?
我的感觉是,我们可以使用将 QML 矩形传递到 QT cpp 文件并在矩形上使用 setMask() API,但这可能吗?
谢谢, 阿比吉特·沙阿
We want to make a particular region of a QML rectangle transparent.
In case of QT, to do the same thing, we have used the setMask API of QWidget.
Is there any API in QML which does the same.
What I feel is that we can use the pass the QML rectangle to the QT cpp file and use setMask() API on the rectangle, but will this be possible?
Thanks,
Abhijeet Shah
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
恐怕当时唯一的方法是制作您自己的 QDeclarativeItem 并使用 C++ 函数向您的 Item 添加掩码。
据报道,QT 开发人员建议支持普通 QML 项目中的屏蔽,将在QtQuick 2.0中发布。
I'm afraid the only way to do it at time is making your own
QDeclarativeItem
and using the C++ functions to add a mask to your Item.Support to masking in plain QML Items was suggested to the QT developers and, as reported, will be released in QtQuick 2.0.
我不知道有什么可以简单地做到这一点。除非我们只讨论矩形。
不管怎样,你可能想尝试 QML Arsenal 的 MaskedImage: https://github.com/omailson/qml- maskeditem 或 MaskedItem,似乎可用: https://bugreports.qt.io/browse/QTCOMPONENTS-388。
I don't know of anything to do this simply. Unless we're talking about rectangles only.
Anyway, you might want to try MaskedImage from QML Arsenal: https://github.com/omailson/qml-maskeditem or MaskedItem, which seems to be usable: https://bugreports.qt.io/browse/QTCOMPONENTS-388.
尝试渐变:
Try gradient: