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

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

  • 1 windows
    • 1.1 cmake
      • 1.1.1 修改.exe程序图标
      • 1.1.2 修改显示页面左上角图标
    • 1.2 qmake
      • 1.2.1 修改.exe程序图标
      • 1.2.2 修改显示页面左上角图标
  • 2 程序打包
    • 2.1 MinGW
    • 2.2 Visual Studio
  • 3 参考链接

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-PictureToIconMANUAL_FINALIZATION${PROJECT_SOURCES}images.qrc
    )
    
    在上面代码中添加资源文件路径images/logo.rc
    if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
    qt_add_executable(02-PictureToIconMANUAL_FINALIZATION${PROJECT_SOURCES}images.qrcimages/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下生成的程序图标,以及任务栏显示设置的图标

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/46598.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Git分支管理】分支2种合并模式

目录 0.回顾 1.ff模式 2.no-ff模式 3.ff模式转no-ff模式 先提交再合并再提交 0.回顾 前面介绍了两种情况总结如下: master没有修改提交,在dev中修改提交,master和dev合并顺利master修改提交的同时dev也修改提交了,产生合并…

【数据结构】高效解决连通性问题的并查集详解及Python实现

文章目录 1. 并查集:一种高效的数据结构2. 并查集的基本操作与优化2.1 初始化2.2 查找操作与路径压缩2.3 合并操作与按秩合并 3. 并查集的应用3.1 判断连通性3.2 计算连通分量 4. 并查集的实际案例4.1 图的连通性问题4.2 网络连接问题 5. 并查集的优缺点5.1 优点5.2…

BernNet Learning Arbitrary Graph Spectral Filters via Bernstein Approximation

发表于:neurips21 推荐指数: #paper/⭐⭐ 设定:在本文中,h是过滤器. bernstein 多项式逼近(这个证明有点稀里糊涂的,反正我觉得一点点问题,可能因为我水平低) p K ( t ) : ∑ k 0 K θ k ⋅ b k K ( t ) ∑ k 0 K f ( k K ) ⋅ ( K k ) ( 1 − t ) K − k t k . p_K(t):…

大数据hive表和iceberg表格式

iceberg: https://iceberg.apache.org/ iceberg表,是一种面向大型分析数据集的开放表格式,旨在提供可扩展、高效、安全的数据存储和查询解决方案。它支持多种存储后端上的数据操作,并提供 ACID 事务、多版本控制和模式演化等特性&#xff0c…

【常见开源库的二次开发】基于openssl的加密与解密——Base的编解码(二进制转ascll)(二)

目录: 目录: 一、 Base64概述和应用场景 1.1 概述 1.2 应用场景 二、Base16 2.1 Base16编码 2.2 Base16编解码 三、Base64 四、OpenSSL BIO接☐ 4.1 Filter BIOs: 4.2 Source/Sink BIOs: 4.3 应用场景: 4.4 具体使用&…

设计模式学习(二)工厂模式——抽象工厂模式

设计模式学习(二)工厂模式——抽象工厂模式 背景抽象工厂模式优点与缺点参考文章 背景 现在我需要开发一个相机操作模块,它可能在Windows下运行,也可能在Linux下运行。由于在厂家提供的SDK中,Windows下的SDK和Linux下…

【JVM】JVM实战笔记-随笔

JVM实战笔记-随笔 前言字节码如何查看字节码文件jclasslibJavapArthasArthurs监控面板Arthus查看字节码信息 内存调优内存溢出的常见场景解决内存溢出发现问题Top命令VisualVMArthas使用案例 Prometheus Grafana案例 堆内存情况对比内存泄漏的原因:代码中的内存泄漏并发请求问…

代谢组数据分析(十四):代谢物组间网络分析(spearman coefficient)

介绍 在代谢物网络分析领域,研究者采用斯皮尔曼系数来定量评估代谢物之间的相关性。该系数作为一种有效的非参数统计工具,能够揭示代谢物间潜在的关联模式,不受它们分布特性的限制。通过计算所有代谢物配对间的斯皮尔曼系数,研究者能够构建出反映代谢物相互关系的网络。 …

Git钩子Hook功能

💾 Hook 钩子 目录 🔔 简介🔔 常见类型🔔 如何配置🔔 使用场景🔔 示例 🔔 简介 Git Hooks是Git内置的一种机制,允许在特定事件发生时执行自定义脚本。Git Hook可以在客户端和服务器端…

PHP多功能投票微信小程序系统源码

🎉一键决策,尽在掌握!多功能投票小程序,让选择不再纠结🤔 📲【开篇:告别传统,拥抱便捷投票新时代】📲 还在为组织投票活动手忙脚乱?或是面对众多选项犹豫不…

Hadoop发展史和生态圈介绍

目录 一、Hdoop概述 二、Hadoop生态组件 三、大数据的技术生态体系 四、Hadoop发展历史 4.1 概述 4.2 Hadoop历史发展节点 4.2.1 2002-2004年理论阶段 4.2.2 2005-2008年Hadoop的问世与崛起 4.2.3 2009-2017年Hadoop助力大数据行业的发展 4.2.4 至今 五、Hadoop优势特…

华为HCIP Datacom H12-821 卷40

1.单选题 下面是台路由器BGP错误输出信息&#xff0c;关于这段信息描述错误的是 <HUAWEI>display bgp error Error Type :Peer Error Date/Time :2010-03-22 12:40:39 Peer Address :10.1.1.5 Error Info : Incorrect remote AS A、可能是由于邻居…

面向 AI 而生的香橙派 AIpro 开发板开箱实测

前几天搞到一块很牛掰的开发板&#xff0c;是香橙派联合华为精心打造的高性能 AI 开发板 – OrangePi AIpro 开发板。 其搭载了昇腾 AI 处理器&#xff0c;可提供 8TOPS INT8 的计算能力&#xff0c;作为单板硬件设备来说&#xff0c;算力杠杠的了&#xff0c;至于跑 AI 模型性…

django实现用户的注册、登录、注销功能

创建django项目的步骤&#xff1a;Django项目的创建步骤-CSDN博客 一、前置工作 配置数据库&#xff0c;设置数据库引擎为mysql 1、在settings文件中找到DATABASES, 配置以下内容 DATABASES {"default": {ENGINE: django.db.backends.mysql, # 数据库引擎NAME: dja…

打破平台限制,使智能手机和平板电脑上无缝运行Windows x86/x64架构的软件和游戏的一款安卓应用

大家好&#xff0c;今天给大家分享一款专为Android设备设计的模拟器应用Winlator。其核心功能是能够在基于ARM架构的智能手机和平板电脑上无缝运行Windows x86/x64架构的软件和游戏。 Winlator是一款Android应用程序&#xff0c;它允许用户使用Wine和Box86/Box64在Android设备上…

docker-compose部署redis-exporter

一、安装prometheus 1、安装 version: 3.1services:redis-exporter:image: bitnami/redis-exporter:latestcontainer_name: redis-exporterports:- 9121:9121environment:TZ: Asia/Shanghaicommand:- --redis.addrredis://127.0.0.1:6379# - --redis.passwordlabels:org.labe…

C#学习3-微软C#官方文档Microsoft-dotnet-csharp.pdf

文章目录 1.内插表达式的字段宽度和对齐方式 1.内插表达式的字段宽度和对齐方式 static void Main(string[] args) {var titles new Dictionary<string, string>() {["Doyle ,Arthur"] "Hound of the Basker,The",["Lodon ,Jack"] &quo…

PHP恋爱话术微信小程序系统源码

&#x1f496;恋爱高手的秘密武器&#xff01;恋爱话术微信小程序&#xff0c;让情话信手拈来✨ &#x1f4ad;【开场白&#xff1a;恋爱路上的甜蜜助手】&#x1f4ad; 还在为跟心仪的TA聊天时找不到话题而尴尬&#xff1f;或是担心自己说的每句话都显得那么“直男/女”&…

vi 编辑器快捷生成 main 函数和基本框架

step1: 执行 sudo vi /etc/vim/vimrc &#xff08;修改vimrc需要管理员权限&#xff1a;sudo&#xff09; step2:输入用户密码&#xff0c;回车, 编辑vimrc文件 step3:在尾行输入以下代码&#xff08;可复制&#xff09; map mf i#include<stdio.h><ESC>o#includ…

uniapp 微信小程序根据后端返回的文件链接打开并保存到手机文件夹中【支持doc、docx、txt、xlsx等类型的文件】

项目场景&#xff1a; 我们在使用uniapp官方提供的uni.downloadFile以及uni.saveFile时&#xff0c;会发现这个文件下载的默认保存位置和我们预想的不太一样&#xff0c;容易找不到&#xff0c;而且没有提示&#xff0c;那么我们就需要把文件打开自己保存并且有提示保存到哪个…