Qt程序图标更改以及程序打包

1 windows

1.1 cmake

1.1.1 修改.exe程序图标

  1. 获得一个logo.ico图标(假设这个ico图标的名称为logo)
    在这里插入图片描述

  2. 创建一个名称为logo.txt文件,在文件中添加下面一行文本

    DI_ICON1     ICON    DISCARDABLE     "logo.ico"
    

    然后将.txt修改为.rc

  3. 在QT工程中添加资源文件,并将logo.icologo.rc添加到资源文件中,具体步骤是右键点击02-PictureToIcon=>添加新文件=>创建QT Resource File=>右键点击资源文件images.qrc=>选择添加现有文件,添加logo.ico和logo.rc

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 修改cMakeLists内容
    if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
    qt_add_executable(02-PictureToIcon
        MANUAL_FINALIZATION
        ${PROJECT_SOURCES}
        images.qrc
    )
    
    在上面代码中添加资源文件路径images/logo.rc
    if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
    qt_add_executable(02-PictureToIcon
        MANUAL_FINALIZATION
        ${PROJECT_SOURCES}
        images.qrc
        images/logo.rc
    )
    
  2. 重新编译即可修改02-PictureToIcon.exe程序图标
    在这里插入图片描述

1.1.2 修改显示页面左上角图标

  1. 首先按照1.1.1中的方法将logo.ico添加到资源文件中
  2. 在ui界面进行设置,具体步骤为点击黑色下三角=>选择资源文件=>选择logo.ico
    在这里插入图片描述
  3. 重新运行即可,可以看到左上角变为了logo.ico图标了
    在这里插入图片描述

1.2 qmake

1.2.1 修改.exe程序图标

按照1.1.1中的方法将logo.ico添加到资源文件中,然后在01-HelloWorld.pro中的最后添加下面代码,images是创建的资源文件的名字

RC_ICONS = images/logo.ico

添加之后必须对这个项目进行重新构建
在这里插入图片描述
然后直接运行,可以从结果中看到,01-HelloWorld.exe的程序图标已经改变
在这里插入图片描述

1.2.2 修改显示页面左上角图标

这个实现过程与1.1.2一样
在这里插入图片描述

2 程序打包

2.1 MinGW

  1. 在使用MinGW进行编译运行,生成.exe文件后,经.exe移动到一个新的文件夹中
    在这里插入图片描述

  2. 然后打开QT 6.7.2 (MinGW 11.2.0 64-bit),类似于cmd的方式进入到上面的文件中
    在这里插入图片描述

    在这里插入图片描述

  3. 然后直接运行下面代码,即打包完成

    windeployqt 02-PictureToIcon.exe
    
  4. 可以直接点击02-PictureToIcon.exe,运行程序
    在这里插入图片描述

2.2 Visual Studio

  1. 在使用MSVC2022进行编译运行,生成.exe文件后,经.exe移动到一个新的文件夹中
  2. 然后打开QT 6.7.2 (MSVC 2019 64-bit),剩下的步骤跟2.1中一样,最终的结果如下图所示。
    在这里插入图片描述

3 参考链接

  1. 2024最新QT图形界面开发教程,这个是B站视频,里面包括qt程序打包,制作合并包,制作安装包等入门教程,是很好的
  2. Qt程序图标更改以及打包发布生成可独立运行的exe文件
  3. cmake管理qt项目,设置windows和linux下生成的程序图标,以及任务栏显示设置的图标

相关推荐

  1. Qt程序打包

    2024-07-16 23:28:02       26 阅读
  2. qt 程序 打包 批处理方式

    2024-07-16 23:28:02       36 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-16 23:28:02       50 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-16 23:28:02       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-16 23:28:02       43 阅读
  4. Python语言-面向对象

    2024-07-16 23:28:02       54 阅读

热门阅读

  1. 从零开始学C语言第五天(练习)

    2024-07-16 23:28:02       18 阅读
  2. Python正则表达式中的分组

    2024-07-16 23:28:02       17 阅读
  3. 电容蓄电能力测试总结

    2024-07-16 23:28:02       19 阅读
  4. 【C++】使用gtest做单元测试框架写单元测试

    2024-07-16 23:28:02       16 阅读
  5. 探索Perl语言:入门学习与实战指南

    2024-07-16 23:28:02       16 阅读
  6. C# volatile关键字

    2024-07-16 23:28:02       20 阅读
  7. (138)SRAM接口--->(001)基于FPGA实现SRAM接口

    2024-07-16 23:28:02       18 阅读
  8. 排序之 快速排序、归并排序、堆排序

    2024-07-16 23:28:02       18 阅读
  9. Oracle或MySQL数据迁移到国产数据库后的注意事项

    2024-07-16 23:28:02       16 阅读
  10. Redis的中BitMap的应用

    2024-07-16 23:28:02       21 阅读
  11. C# 匿名方法、Lambda、Linq概念及联系

    2024-07-16 23:28:02       21 阅读