2017-02-24 3 views
0

- 私見つからないQRC:QTリソースは、以下のファイルをロードしようとしている

<!DOCTYPE RCC><RCC version="1.0"> 
<qresource prefix="/mike"> 
    <file alias="mike.json">mike.json</file> 
</qresource> 
</RCC> 

QFile file(":/mike/mike.json"); 

としかし、それは動作しません。

だから私は別の.qrcファイルに

<qresource prefix="/mike"> 
    <file alias="mike.json">mike.json</file> 
</qresource> 

を移動しました。その後、それは働いた。

少なくともプレフィックスが作成されているかどうかを確認するためのデバッグ方法はありますか?

私は

SOURCES += \ 
    $$PWD/form.cpp 

HEADERS += \ 
    $$PWD/form.h 

RESOURCES = $$PWD/mike.qrc 

からそれをロードすることだし、.cppファイルと.hファイルが用意されています。私はなぜ​​が解析されていないように見えるのか分かりません。

+0

QFileファイル( "qrc:/mike/mike.json"); 'を使用しようとしましたか? – Redanium

答えて

0

少なくともプレフィックスが作成されているかどうかを確認するためのデバッグ方法はありますか?

方法1:GammaRayを使用すると、リソースツリーが表示されます。

方法2:アプリケーションでは、:/から始まる再帰的QDirIteratorを使用し、ファイル名を見つけたものとしてダンプします。

+0

方法2を使用しています.qrcファイルに設定されているリソースファイルがロードされていません。それには理由がありますか? – KcFnMi

+0

それは、それがそのディレクトリイテレータによってリストされたツリーにないことを意味しますか? (あなたはそれが再帰的だと確信していますか?) – peppe

関連する問題