标题:发布的QT程序在其他机器上无法使用qrc文件
作者:sunerok
日期:2009-12-31 22:26
内容:
最近开发了一个QT程序,发布的时候也带上了必要的dll文件。虽然在没有安装QT环境的机器上可以正常运行,但是qrc文件好像没发挥作用,图片都无法显示出来。
希望哪位大侠可以给点指导,谢谢。
#1 [dbzhang800 12-31 23:30]
我是不是可以认为你用的图片不是 png 格式,而且你发布程序没有发布相应的图片插件
#2 [sunerok 01-05 13:03]
引用第1楼dbzhang800于2009-12-31 23:30发表的:
我是不是可以认为你用的图片不是 png 格式,而且你发布程序没有发布相应的图片插件
感谢dbzhang800的回复。我的图片确实不是png格式的,采用的基本都是jpg格式。因为是使用QT designer开发的,在qrc文件中
添加jpg文件好像也没出现什么问题。
另外我发布程序的时候确实没有包含图片插件啊。不知道是哪个插件呢?望指教。
#3 [sunerok 01-05 16:12]
哦。我知道了,是imageformats插件。
也许我可以这么理解:对于不是PNG格式的图片,要想正常使用,得包含imageformats插件。
#4 [iiiyyyhhhsss 03-09 22:03]
如何包含这个插件?是怎么样的步骤?
使用#include?还是什么的,有谁可以说一说步骤吗?对于发布真的很陌生 ...
#5 [iiiyyyhhhsss 03-09 22:24]
找到方法了,如下:
在windows下编译好的QT程序在其他没有安装QT的机器上会出现图标和图片无法正常显示的问题。
这时我们可以通过以下方式来解决:
在release文件夹里创建plugins文件夹,并将QT安装目录下的plugins\imageformats文件夹复制到release\plugins文件夹(imageformats文件夹包含了许多图片格式的插件,如jpeg等)。
然后最重要的一步是在main.cpp中添加以下语句
QApplication::addLibraryPath("./plugins");
编译程序之后再发布就可以了