2016-09-22 7 views
1

私の質問はとても簡単です。 私はGuiがQMLで開発されたQtアプリケーションを持っています。 私のバックエンド側は、/ imagesという名前のフォルダにjpgイメージを生成して保存します。 私は、表示したい画像の名前を保持する文字列をC++からQMLに送ることができます。悲しいことに、私のQML Imageオブジェクトには何も表示されません。ランタイムで生成されたQMLでイメージ(jpg)をロードする方法

イメージがqml.qrcファイルで事前に宣言されている場合にのみ表示できる場合は、 悲しいことに、qrcファイルではまだワイルドカードはサポートされていません。 https://bugreports.qt.io/browse/QTBUG-1400

回避策はありますか?
イメージの名前は固定されていません。特定のランタイム値(タイムスタンプ)で生成されます。

ありがとうございます

+0

おそらくあなたは[QQuickImageProvider](http://doc.qt.io/qt-5/qquickimageprovider.html) – folibis

+1

ナを必要とする、彼はちょうど私がQQuickImageProviderを必要とするかもしれないディスクではなく、RQC – dtech

+0

からロードする必要があるが、それはです私のバックエンドでは、QMLにさらされた各モデルの複数のイメージ(実行時に生成される)を扱うので、お尻が痛いです。 QQuickImageProviderを使用すると、イメージを格納および読み込むのではなく、どんな場合でも迅速に処理する必要があります。私は明日それを撃つだろう。 thx – Spatz

答えて

3

デフォルトでは、qrcファイルの画像ソースが検索されます。実際のファイルシステムに移動させるには、パスにfile:///を追加します。

+0

ええ、それは 'cache:false'と完全に連動しました) 他のものに切り替える前に、この実装のパフォーマンスを試してみましょうThx – Spatz

+0

'file:/'も動作します – dtech

+0

ファイル名はC++から来ているので、 'QUrl :: fromLocalFile()'を使い、結果のURLをQMLに渡してください –

関連する問題