2017-07-06 19 views
0

私はqtプロジェクトで作業していて、すべての画像ファイルを相対的に設定したいのですが、通常の親URL参照を使用して画像にアクセスすることはできません。QTスタイルシートでの相対URLの使用

image:url('../sources/status/status.png'); 

ただし、画像の絶対パスを使用して画像を読み込むことはできます。

+0

パスは、ソースコードまたは実行可能ファイルの位置に対して相対的ですか? – eyllanesc

+0

あなたはPythonまたはC++を使用していますか? – eyllanesc

+0

ソースコードと実行可能ファイルの場所の両方に関連します。 –

答えて

1

Qt Resource Systemを使用することをお勧めします。あなたのリソースの依存関係は実行可能ファイルに含まれていて、フォルダツリーを共有する必要はありません。

リソースURLを使用して、QSSコードでイメージを設定できます。

すべてのイメージでリソースを作成すると、Qt Creator IDEを使用して簡単にセットアップできます。必要に応じて、自分自身のプレフィックスを追加して残りのリソースと区別することができます。

<!DOCTYPE RCC><RCC version="1.0" prefix="/"> 
<qresource> 
    <file>../sources/status/status.png</file> 
    <file>../sources/status/example_1.png</file> 
    <file>../sources/status/example_2.png</file> 
    <file>../sources/status/example_3.png</file> 
</qresource> 
</RCC> 

そしてもしあなたpreffix、その「/」は、あなたのQSSのためにこれを使用する:

image:url(':/../sources/status/status.png');