Qt 5.15.2 为可执行程序添加图标的方法

前一阵子,给自己的小产品写了一个配置软件,虽然功能实现了,但还是觉得不够专业;

问题出在我的程序看起来像是一个"木马"软件......

没有程序图标,像是无法识别的未知程序......

运行起来,标题栏没有标识,任务栏也没有,相貌平平,毫无辨识度......

我希望实现的效果是它能变成一个绿色版、打开即用、具有辨识度的软件工具,就像下面这样:

所以,这里记述一下为Qt程序添加各种图标的方法,以便日后在别的项目上使用时进行查阅。


开始操作前,说明一下运行环境;

· 操作系统版本:Windows 11;

· QT版本:Qt 5.15.2;

接着,准备好待使用的图标;

准备好Logo图标;(可以截图,也可以是照片)

再将准备好的图片转换成ico格式;(这里我是使用https://www.ico51.cn/网站转换的,选择其它转换工具也可);

①、选择需要转换的图片;

②、选择尺寸;(尺寸越大,效果越好)

③、点击生成,生成后的文件会自动下载;

在Qt工程下,新建一个image的文件夹,并把生成好的ico格式图标文件复制到文件夹下;

至此,前期的准备工作结束。


首先添加标题栏、任务栏上的图标;

①②、在Qt工程的Forms文件夹下新建一个 .rc 资源文件;

①、文件命名为image,这样便于统一管理;

②、保存路径默认为工程所在目录即可;

默认添加到工程中,选择Finish<完成>;

①、由于将图标都放在了工程根目录下的image中,这里路径先设置成根目录 /;

②、将我们准备好的ico格式图标都添加进 .rc 文件中;

③、添加正确后会显示图标的路径、名称;

在main.cpp源文件中加载图标:

cpp 复制代码
w.setWindowIcon(QIcon(":/image/256_256.ico"));   //添加程序图标

然后重建Qt工程并运行,这时程序的标题栏、任务栏图标都有显示;

添加可执行程序的图标;

①、在工程目录下新建一个文本文件,然后将文件修改为 .rc 格式;

②、添加图标宏指令;

注意:.rc 文件的名称可自定义;

cpp 复制代码
/*图标宏指令*/
IDI_ICON1 ICON DISCARDABLE "/image/256_256.ico"

在工程管理源文件中加载将新建好的 .rc 文件;

cpp 复制代码
RC_FILE = logo.rc  //添加logo的.rc文件

最后点击重建,可以看到重新生成的 .exe 可执行文件已经有了图标;


如果想要打包生成完整的绿色可执行程序,可参考文章《Qt5.15.2 可执行程序发布》;

至此,Qt程序添加图标的方法就介绍完毕,希望对朋友们有所帮助。