矩形/画面の透明度を設定する方法。QML:矩形の透明度が機能しない
// 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つのローダー1枚の画像を持っていると、背景色が透明です。 私はこのアプリケーションを実行すると、ローダーソースを設定していないので、中央に画像がある透明な背景が表示されるはずです。
しかし、画面に白い背景が埋め込まれたイメージが中央に表示されていますが、この白い背景色を塗りつぶしている人はわかりません。
私はQT.4.7.0とLinuxを使用しています。
私は目標のシステム上で2つのプレーンをビデオプレーンにし、もう1つはグラフィックスプレーンです。透明な背景(ビデオの場所で透明度を設定する)でGUIを実行すると、上の例でビデオを表示する必要がありますビデオプレーンでビデオを再生しているはずだったので、白で表示されます。
申し訳ありませんがQDecalarativeViewです。私は質問を編集しました。 – kbalar
はいLoaderScreenはQDecalarativeViewから派生したもので、完全な透過性が必要です。 - Kbalar – User7723337