本文主要介绍在 Qt 中设置程序图标的方法。

说明:

  • 本文中的应用程序是面向 Windows 操作系统的;
  • 本文中使用的 Qt Creator 版本号为:7.0.0;
  • 本文中使用的 Qt 版本号为:5.14.2;
  • 本文介绍的方法中使用的图标文件需为“ico”格式,且该文件必须包含 ico data。包含 ico data 的 ico 格式图标可由“http://www.ico51.cn/”等网站生成。

1 概述

在 Windows 操作系统中,程序图标一般会涉及三个地方,以文件搜索软件“everything”为例,程序图标分别为:

1)可执行程序(以及对应的快捷方式)的图标

qt styllesheet 去掉图标背景 qt 软件图标_Qt

2)程序界面标题栏图标

qt styllesheet 去掉图标背景 qt 软件图标_Qt_02

3)程序在任务栏中的图标

qt styllesheet 去掉图标背景 qt 软件图标_资源文件_03

下面介绍使用 Qt 编写 Windows 桌面应用程序时,上面这三个图标的具体设置方法。

2 方法

本章详细介绍设置程序图标的方法。

2.1 创建资源文件

首先,通过 Qt Creator 为项目创建一个新的资源文件,如下图所示:

qt styllesheet 去掉图标背景 qt 软件图标_图标_04

然后根据实际情况填写文件名和路径信息,如下图所示:

qt styllesheet 去掉图标背景 qt 软件图标_qt_05

点击上图中的“Next”按钮,完成资源文件的创建。创建好的资源文件会自动添加到项目中,如下图所示:

qt styllesheet 去掉图标背景 qt 软件图标_资源文件_06

右键点击创建好的资源文件,选择“Open in Editor”,之后在弹出的编辑器中根据实际情况补全程序图标的路径和名称,具体方法如下:

  1. 在 Prefix 框体中填写程序图标的路径信息,如果程序图标与项目 pro 文件处于同一目录下,则填写“/”路径即可;
  2. 部署程序图标文件,例如可将程序图标文件放置在项目主目录下(与 pro 文件位于同一目录);
  3. 点击“Add Files”按钮添加程序图标。

上述操作完成后,资源文件的信息如下图所示:

qt styllesheet 去掉图标背景 qt 软件图标_图标_07

在本文的示例中,图标文件名称为“Hexapod.ico”,该文件位于项目主目录下。

2.2 设置标题栏图标

通过下列函数设置标题栏图标:

setWindowIcon(QIcon("://Hexapod.ico"));

2.3 设置可执行程序图标

设置可执行程序图标的步骤如下:

1. 在项目主目录下新建一个 .rc 文件,例如 Hexapod.rc;

2. 使用 Notepad++ 等软件编辑 .rc 文件,向其中添加如下内容:

IDI_ICON1    ICON    DISCARDABLE    "Hexapod.ico"

注意:上面内容中的 Hexapod.ico 需要填写实际的图标名称。

3. 在 .pro 文件中填写下列内容,将 .rc 文件导入至项目中:

RC_FILE = Hexapod.rc

至此,程序图标设置步骤就全部完成了。

说明:程序可执行图标设置后,程序对应的任务栏图标也会随之改变,不必单独设置。

2.4 效果检查

完成上述步骤后,重新构建项目,得到的可执行程序图标、程序界面标题栏图标和任务栏图标就会更新为设置的图标了,这三个位置的图标更新情况,如下列三张图片所示:

qt styllesheet 去掉图标背景 qt 软件图标_qt_08

qt styllesheet 去掉图标背景 qt 软件图标_qt_09

qt styllesheet 去掉图标背景 qt 软件图标_资源文件_10