如何设置矩形/屏幕的透明度。
我有以下代码:
// main.cpp
void main(int argc, char*[] argv)
{
QApplication::setGraphicsSystem("raster");
QApplication app(argc, argv);
QDeclerativeView view;
view.setSource(QUrl::fromLocalFile("loaderTest.qml"));
view.setResizeMode(QDeclarativeView::SizeRootObjectToView);
view.showFullScreen();
//QRegion mask(10, 10, 100, 100);
//view.setMask();
view.show();
app.exec();
}
QML 文件是:
//loaderTest.qml
Rectangle
{
id: mainRectangle
width: 1000
height: 700
color: "transparent"
//color: "#00000000"
Image
{
id: image1;
width: 348;
height: 155;
anchors.horizontalCenter: parent.horizontalCenter;
anchors.verticalCenter: parent.verticalCenter;
source: "test.png"
}
Loader
{
id: mainLoader
anchors.fill: parent;
source: "";
focus: true;
}
}
我在这个屏幕上有一个加载器和一个图像,背景颜色是透明的。当我运行这个应用程序时,它应该在中心显示带有图像的透明背景(因为我没有设置加载器源)。
但我得到的是在屏幕中心填充白色背景的图像,我不知道是谁在填充这个白色背景颜色,因为我提到了透明颜色作为背景。
我正在使用 QT.4.7.0 和 Linux。
我的目标系统上有两个平面,一个是视频平面,另一个是图形平面,当我运行具有透明背景的 GUI(在视频位置设置透明度)时,它应该在上面示例中的视频位置显示视频,它显示背景为白色,如它应该在视频平面上显示视频播放。