在Windows 7中,我对应用程序图标没有任何问题。在Windows 10中,可执行文件的图标没有问题,但我的窗口图标有问题。标题中有默认图标而不是我的图标。
这就是我设置图标的方式
QIcon icon(":/icons/icon1.ico");
setWindowIcon(icon);
将imageformats\qico.dll
复制到.\imageformats\
没有帮助。
答案 0 :(得分:0)
尝试使用RC文件。
例如:
app.rc
IDI_ICON1 ICON DISCARDABLE "app_icon.ico"
和* .pro文件:
win32 {
RC_FILE += app.rc
}
答案 1 :(得分:0)
QWidget::setWindowIcon()
功能仅对设置窗口图标有用。它对二进制文件(.exe)图标没有影响。
二进制文件图标由Windows处理,无需运行程序。因此,无论您在代码中添加什么都不会对可执行文件图标产生任何影响。
此外,移动qico.dll
也不会产生任何影响。程序运行时,Qt会加载此DLL。
要更改可执行文件图标,必须使用Windows资源系统将其嵌入可执行文件中(不要将其与Qt资源系统混淆)。要在有qmake项目时执行此操作,您可以使用RC_ICONS
,RC_FILE
或RC_RES
。
最简单的方法是使用RC_ICONS
:
RC_ICONS = icons/appicon.ico # Path relative to the .pro file
请注意,设置RC_FILE
或RC_RES
会停用RC_ICONS
。请查看文档:{{3}}
值得注意的是,Windows会保留图标缓存,因此如果您更改图标并重建,新图标可能不会立即显示。