長方形/画面の透明度を設定する方法。
私は次のコードを持っています:
// 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;
}
}
この画面にはローダーと画像が1つあり、背景色は透明です。このアプリケーションを実行すると、中央に画像が表示された透明な背景が表示されます(ローダーソースを設定していないため)。
しかし、私が得ているのは、画面に白い背景が塗りつぶされた中央の画像です。背景として透明色について言及したので、誰がこの白い背景色を塗りつぶしているのかわかりません。
QT.4.7.0とLinuxを使用しています。
ターゲットシステムに2つのプレーンがあります。1つはビデオプレーンで、もう1つはグラフィックプレーンです。透明な背景でGUIを実行すると(ビデオの場所に透明度を設定)、上記の例ではビデオの場所にビデオが表示されます。ビデオプレーンで再生中のビデオを表示する必要があります。