我正在尝试让我的应用程序(FlatSiteBuilder)在Ubuntu的任务栏上显示一个图标。 一个小的演示应用程序正在使用以下代码正确执行此操作。
QApplication a(argc, argv);
a.setWindowIcon(QIcon(QLatin1String(":/images/icon.svg")));
但是当我尝试在我的应用程序中执行此操作时,仅显示QuestionMarkIcon
当我尝试在.pro文件中将我的演示应用程序的TARGET更改为FlatSiteBuilder时,图标不再显示。
当我尝试将我的演示应用程序的TARGET更改为Gimp时,会显示Gimp-Icon。
Ubuntu显示Gimp-Icon时存储的信息在哪里?
存储的信息在哪里,Ubuntu没有显示FlatSiteBuilder的图标?
我的.pro文件
TARGET = IconTest
- >显示正确的图标
TARGET = IconTest2
- >显示正确的图标
TARGET = FlatSiteBuilder
- >显示问号图标
TARGET = Gimp
- >显示Gimp图标
答案 0 :(得分:2)
与Windows或macOS(应用程序图标与可执行文件捆绑在一起)不同,Linux在使用这些资源时会有所不同。实际上,有多个位置可以存储图标。例如,您可以将SVG图标文件放在此处:
/usr/share/icons/hicolor/scalable/apps/FlatSiteBuilder.svg
然后从终端刷新GTK图标缓存:
sudo update-icon-caches /usr/share/icons/*