Qt 5.0.1 中未显示应用程序图标

Application icons don't show in Qt 5.0.1

本文关键字:显示 应用程序 图标 Qt      更新时间:2023-10-16

我有一个用Qt 4.8开发的应用程序(工作良好),现在我正试图将其迁移到Qt 5。我下载并安装了Qt Creator 2.6.2(与Qt 5),但我有一些问题…

程序运行并工作,但它不显示任何图标。

我的资源文件有"/"前缀,我这样调用我的资源,例如:

splash->setPixmap(QPixmap(":/images/xml.png"));

在我的调试项目文件夹中,我有资源文件(icons.qrc),在同一位置的文件夹名为"images"。

这是与Qt 4.8相同的配置,但现在我找不到一种方法来使图标显示…

我错过了什么????

谢谢。

您需要确保您的文件在资源文件中以正确的前缀注册。对于在c++代码中加载资源来说,磁盘上文件所在的文件夹并不重要。

你必须在你的资源文件中创建前缀"images"(添加>添加前缀),然后在这个前缀下添加"xml.png"作为文件。如果选择在文件上设置别名(例如"xml_img"),则可以通过以下方式在代码中加载资源:

splash->setPixmap(QPixmap(":/images/xml_img"));

我有同样的问题,我从Qt 4.6.2移植到Qt 5.6.2…我找到了这个文件:http://doc.qt.io/qt-5/qdir.html#Q_INIT_RESOURCE根据Qt5,所有的资源都必须被初始化。

所以,这需要从一开始就做。所以你的"main.cpp"文件看起来应该像这样:

#include "myResource.qrc.cpp"
void myFunction(){
    Q_INIT_RESOURCE(myResource);
}

这似乎对我有用。但是要仔细查看文档,看看是否适合你