QT 4.7.0を使用しています。私はWindowsでプロジェクトを作成しました。私はボタンにいくつかのアイコンを使用していますが、別のWindowsマシンに.exeファイルを移動するとアイコンが表示されません。開発マシン上でプログラムを実行すると、アイコンが表示されます。Qt/C++:プログラムがウィンドウ下で実行されているときにアイコンが表示されないO.S
qrcファイルを作成し、アイコンを追加しました。
QT 4.7.0を使用しています。私はWindowsでプロジェクトを作成しました。私はボタンにいくつかのアイコンを使用していますが、別のWindowsマシンに.exeファイルを移動するとアイコンが表示されません。開発マシン上でプログラムを実行すると、アイコンが表示されます。Qt/C++:プログラムがウィンドウ下で実行されているときにアイコンが表示されないO.S
qrcファイルを作成し、アイコンを追加しました。
あなたのコードはリソースバンドルのアイコンを参照する必要があり、ハードディスクパスのアイコンは参照しないでください。 Depends.exeはとターゲット・マシン上のデバッグバージョンをプロファイリング
QIcon icon(":/resources/icon.ico");
なく
QIcon icon("resources/icon.ico");
OrcunCや私の推測が正しいかどうか、あなたが表示され役立ちます。
私はQIconアイコンを試しています( ":/ resources/icon.ico");何も変更はありません –
これは正しい方法です。それが失敗した場合は、デバッガのQIconコンストラクタに進んでください(Qtライブラリのデバッグバージョンを使用) –
シンプルなアイコンファイルや、svg/jpegのようなもっと複雑なものを使用していますか? qrcをコンパイルして、qrcコンパイルの出力をコンパイル/リンクしましたか? – Jens
問題を解決する別の方法は、私はあなたが実行時にDLLをプラグイン画像をリンクする必要があると思うqrs
です。
あなたのQtディレクトリからプラグインフォルダに必要なdllを展開ディレクトリにコピーして読み込みます。
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QString sDir = QCoreApplication::applicationDirPath();
a.addLibraryPath(sDir+"/plugins");
//*********** do your things
return a.exec();
}
すべてを含める必要はありません。あなたが必要とするものだけ。プラグイン\ imageformatsの下のQtソースフォルダを見てください。 DLLの束があります。この答えは説明のため、リンクする必要はありません。実行時に見つけてください。たとえば、icoファイルを使用している場合は、qico4.dllが必要です。 jpegをロードする場合は、qjpeg4.dllが必要です。上記の答えはQtに必要な場合にプラグインを探す場所を教えてくれます。 – Liz
@Lizそれを拡張していただけますか?私はqico4.dllに問題があると信じています。[Windows上に表示されない.icoアイコン](http://stackoverflow.com/q/13891591/341970) – Ali
私はあなたを確認したときに、あなたがあなたの答えを得たように思えます。 – Liz
現在解決できない場合はこのページをご覧ください。
そのページへのリンクを提供してもそれは答えではありません。コメントでも彼を助けることができます:-) –
ここに例を掲載できますか? –