QTは非メインウィンドウの背景画像とメインウィンドウの背景画像を設定します(詳細版)

ヒント:記事作成後に目次を自動生成することもできますが、生成方法については右のヘルプを参照してください。


序文

ウィンドウの背景画像を設定するためのオンライン設定のほとんどはメイン ウィンドウ MainWindow に関するものであり、メイン ウィンドウ以外の他の背景画像を設定するブログはほとんどありません。この記事では主にメイン ウィンドウと非メイン ウィンドウの背景画像を styleSheet 属性から設定します。

1. メインウィンドウの背景画像を設定する

(1) まず、プロジェクト内に背景画像を保存するためのリソースファイルを作成します (プロジェクトを右クリック→新規プロジェクトの追加→Qt リソースファイル)。

(2) メイン ウィンドウのプロパティ設定でスタイルシートを見つけ、[リソースの追加] -> [背景画像] を選択し、対応する背景画像を選択します。画像へのパスが表示されます。

画像パスの例: {background-image: url(:/new/prefix1/C:/Users/dell/Pictures/background4.jpg);

このとき発生する問題は、背景画像を追加するとコンポーネントに背景色も追加されることになり、これは私たちが望む結果ではないということです。

解決策は、画像パスの前に #objectName を追加し (ここでの objectName は .ui インターフェイス ファイルのクラス名であり、プロパティの QObject を通じて表示できます)、中括弧のペアを使用する必要があります。画像パスを囲みます。変更された画像パスの例:

#MainWindow {背景画像: url(:/new/prefix1/C:/Users/dell/Pictures/background4.jpg)};

2. 非メインウィンドウの背景画像を設定する

(1) 非メインウィンドウの背景画像の設定はメインウィンドウと同様ですが、リソースファイルで追加する必要がある点は同じです。違いは、メイン以外のウィンドウではコンポーネント (ウィジェット) を追加する必要があることです (左側のコンポーネント ボックスで [追加] を選択します)。次に、Widget のプロパティの styleSheet に背景画像を設定します。設定手順は上記のメイン画面と同じです。メイン ウィンドウの設定との唯一の違いは、.ui インターフェイスの styleSheet ではなく、Widget の styleSheet に設定されることに注意してください。

もう 1 つ注意すべき点は、さまざまなコンポーネントを追加する前にウィジェットを追加する必要があることです。つまり、ウィジェットを最初に追加する必要があります。追加しないと、ウィジェットの背景画像がすべてのコンポーネントを覆ってしまいます。


要約する

私の仕事があなたにとって効果的な助けとなることを願っています。質問についてはコメント欄で議論してください。

おすすめ

転載: blog.csdn.net/qwpo135790/article/details/126118740