Qt5デスクトッププロジェクトがあり、Qt Creatorエディターで「resource.qrc」ファイルを追加しました。これにより、プロジェクトの.proファイルに次の行が作成されました。
RESOURCES = resource.qrc
空白のプレフィックスとpngファイル(14x14)を入れて、次のように使用しようとしました。
QPixmap pixmap = QPixmap ("://my_image.png");
ui->combobox->addItem(QIcon(pixmap), "itemname");
問題は、アイコンが表示されないことです。
次の作品:
QPixmap pixmap(14,14);
pixmap.fill(QColor("red"));
ui->combobox->addItem(QIcon(pixmap), "itemname");
したがって、問題はリソースの埋め込みプロセスにあるはずです。生成された「exe」にはリソースセクションが含まれていないことに気付きました...静的にリンクされた外部ライブラリがないため、 Q_INIT_RESOURCE(resource)マクロ(未定義の外部を提供します)
更新:ここに私のqrcファイルを投稿しています:
<RCC>
<qresource prefix="/">
<file>my_image.png</file>
</qresource>
</RCC>
とてもシンプルで、実行時にアイコンが表示されない理由がわかりません