Ali*_*Ali 9 plugins icons qt toolbar ico
我遵循了Qt资源系统指南,并且.ico图标出现在Linux上.
当我尝试从Qt Creator运行应用程序时,图标不会显示在Windows上.
我怀疑基于Qt/C++的插件问题:在Windows操作系统下运行程序时图标没有显示但我没有弄清楚如何创建Qt插件指南.
它是插件问题还是为什么不在Windows上显示图标?
如果是插件问题:如何告诉我的应用程序在哪里可以找到qico.dll?
环境细节:
适用于:Kubuntu 12.04 LTS,Qt Creator 2.4.1和Qt 4.7.4(64位)
失败:Windows XP SP2 32位,Qt Creator 2.4.1和Qt 4.7.4(32位)
Everyting是默认的(开箱即用),我没有弄乱设置.
resources.qrc
<!DOCTYPE RCC><RCC version="1.0">
<qresource>
<file>images/spreadsheet.ico</file>
</qresource>
</RCC>
Run Code Online (Sandbox Code Playgroud)
也尝试过<qresource prefix="/">.
来自applicaton.pro
RESOURCES += \
resources.qrc
OTHER_FILES += \
images/spreadsheet.ico
Run Code Online (Sandbox Code Playgroud)
在相应的源文件中
QIcon(":/images/spreadsheet.ico")
Run Code Online (Sandbox Code Playgroud)
我也尝试过在Windows上部署应用程序
QDir plugins(QCoreApplication::applicationDirPath()+"/plugins");
qDebug() << "Plugin directory" << plugins.absolutePath() << "found?" << plugins.exists();
app.addLibraryPath(plugins.absolutePath());
Run Code Online (Sandbox Code Playgroud)
使用插件目录中的qico.dll.它应用程序打印出plugins目录,但图标仍未显示.
我再说一遍:它适用于Linux.
doc*_*doc 15
对于未来的谷歌访问者:你可能会在这个问题下阅读评论,因为这就是这个答案诞生的地方.
所以问题是默认情况下ico不支持格式QIcon,你需要一个插件.在这种情况下QImageReader::supportedImageFormats(),列出QIcon支持的格式的函数可能会有所帮助.
如果您的格式不受支持,您可以尝试将imageformats文件夹从Qt的plugins目录复制到您的可执行文件所在的目录中.如果您的应用程序位于c:\myapp文件夹中,则应该有c:\myapp\imageformats文件夹(不是c:\myapp\plugins\imageformats).否则,您必须使用设置路径QCoreApplication::addLibraryPath.
还要确保qico4.dll和qicod4.dll(如果你在调试模式下构建)存在.
| 归档时间: |
|
| 查看次数: |
7091 次 |
| 最近记录: |