一、前言

继前一篇生成MFC基于对话框工程->新建MFC对话框后,开始改动对话框图标以及生成的.exe图标。

原对话框图标以及.exe图标:

在菜单栏中选择生成目录为Release

打开Release文件夹

二、制作新图标

新图标的格式必须为.ico格式,网上有在线转换成.ico的工具。

我使用的是CSDN上一位博主推荐的图标编辑管理工具:Sib Icon Studio。

因为PS用的不太熟,我使用了ppt制作图标,之后保存为图片格式,再用Sib Icon Studio生成了图标。

(1).为了方便,通过设计->幻灯片大小->自定义幻灯片大小,将背景设为正方形;

(2).设计图标,保存为.png格式(.jpg格式也可以,只要Sib Icon Studio支持都可以)

(3).用Sib Icon Studio软件制作.ico图标

文件->从图像创建图标,找到保存的.png格式图标图片,在透明度选项中选择左侧按钮像素,然后选择样式,点击确定。

右键单击右侧图标栏图标,选择新建图像,分别新建大小为24*24、128*128和256*256的图像

点击保存,存为test.ico。(这是一个.ico图标包,包含.ico图标的各种尺寸)

(4). 将test.ico复制到MFC/MFC/res/目录下(MFC是我的MFC工程所在文件夹,文件夹中还有一个MFC文件夹(以你新建MFC时起的名字命名的文件夹), res文件夹就在其中)。

(5). 替换图标。在VS的资源视图中找到icon,右键单击icon,选择添加资源->icon->导入

在res文件夹中找到复制过去的test.ico,打开。

右击ICON下的IDR_MAINFRAME,选择属性,将属性中的ID(IDR_MAINFRAME)复制下来

删除ICON下的IDR_MAINFRAME,将刚刚复制的ID(IDR_MAINFRAME)填入IDI_ICON1,点击确定,发现IDI_ICON1名称自动改为了IDR_MAINFRAME(VS版本是2017,不知到其他版本是否可以自动更改,不过,更改与否关系不大,只要ID改为了IDR_MAINFRAME就可以)。

(6). 生成。点击运行,发现图标已经改为了自己设计的图标了。

MFC基于对画框工程笔记->更改窗口图标以及生成的.exe图标的更多相关文章

  1. MFC修改任务栏图标及程序运行exe图标

    修改左上角的图标和任务栏里图标 在对话框构造函数中 1 CTestDlg::CTestDlg(CWnd* pParent )2 : CDialog(CTestDlg::IDD, pParent)3 { ...

  2. MFC基于Dialog的工程中使用OSG

    osg的例子有osgviewerMFC,是MDI类型的MFC工程,我一般用基于对话框的MFC较多. 注意观察MFC_OSG.h文件中的cOSG构造函数,参数是一个窗口句柄hWnd,这里的窗口可以不只局 ...

  3. VC++6.0一些常见问题解决方法(打开多个窗口、行号、添加文件无响应、更改.exe图标及名称等等)

    背景: 最近使用VC++6.0做一个界面,供测试CAN通信使用.由于客户希望我们提供简单方便的函数接口让其最快速使用CAN,DLL(动态链接库)是不二之选.做DLL需要两个VC窗口进行测试才方便.可是 ...

  4. 基于WPF的酷炫GUI窗口的实现全过程

    title: 基于WPF的酷炫GUI窗口的实现全过程 date: 2020-08-14 permalink: /build/wpfgui sidebarDepth: 2 tags: wpf gui 软 ...

  5. VS2013 更改MFC标题栏图标和生成的执行文件图标

    创建一个新工程,可以什么都不加.打开.rc,  创建或打开Icon资源(以下都以Icon为例).     单击工程窗口的资源视图标签,选中资源ID为IDR_MAINFRAME图标资源,然后按Delet ...

  6. MFC基于CAsyncSocket套接字客户端代码示范

    MFC基于CAsyncSocket套接字客户端代码示范 https://blog.csdn.net/txwtech/article/details/93016190

  7. VS2013中修改MFC对话框左上角和exe图标

    一.开发环境 1.VS2013: 2.C++ / MFC: 二.更改步骤 1)创建一个新工程,可以什么都不加.打开“资源视图”, 右键点击项目名称,选择“添加资源”,导入“Icon”资源文件(事先准备 ...

  8. 双缓冲绘图和窗口控件的绘制——ATL ActiveX 窗口控件生成向导绘制代码OnDraw的一个错误 .

    双缓冲绘图和窗口控件的绘制 ---ATL ActiveX 窗口控件生成向导绘制代码OnDraw的一个错误 cheungmine 我们通常使用ATL COM组件,生成一个带窗口的ActiveX控件,然后 ...

  9. 【Unity Shaders】学习笔记——SurfaceShader(八)生成立方图

    [Unity Shaders]学习笔记——SurfaceShader(八)生成立方图 转载请注明出处:http://www.cnblogs.com/-867259206/p/5630261.html ...

  10. 更改开机默认不显示explorer.exe,直接启动自己写的EXE程序方法

    原文:更改开机默认不显示explorer.exe,直接启动自己写的EXE程序方法 更改开机默认不显示explorer.exe,直接启动自己写的EXE程序的函数: bool UpdateWinlogon ...

随机推荐

  1. mac本地搭建ollama

    mac本地搭建ollama webUI *简介:ollama-webUI是一个开源项目,简化了安装部署过程,并能直接管理各种大型语言模型(LLM).本文将介绍如何在你的macOS上安装Ollama服务 ...

  2. 关于UE4对象静态/动态的销毁问题整理(AddToRoot、TWeakObjectPtr)

    1.非UObject对象 即非UObject常规C++对象,创建销毁不赘述.但可以用智能指针:从而不用关心销毁逻辑: TSharedPtr<ClassA> MyObj = MakeShar ...

  3. PageOffice6 版本常用事件

    1.AfterDocumentOpened 事件 打开文件后自动触发的事件是 AfterDocumentOpened 事件,它通常用于实现文件打开后自动执行某些业务逻辑,比如将默认控件全屏.禁止保存. ...

  4. SDXL

    SDXL 模型经过训练可以创建具有更好图像质量的更大图像.它们还可以拍摄 512x512 分辨率的优质图像,因此就图像质量而言,它们通常是 SD 1 或 2 型号的良好替代品. 但是,它们确实会消耗更 ...

  5. 『手撕Vue-CLI』处理不同指令

    前言 在上一篇『手撕Vue-CLI』添加自定义指令中,已经实现了自定义指令的添加,但是指令还是比较简单的,只是简单的打印一句话,那么在实际运用场景中,可能会有更多的需求,比如可能需要在指令中传递参数, ...

  6. vue 常用类库引用

    js 端生成guid 类库一:https://github.com/uuidjs/uuid        npm i uuid --save 类库二:https://github.com/LiosK/ ...

  7. 史上最全shell脚本编程语法上册

    1. shell 脚本语言的基本用法 1.1 shell 脚本的用途 将简单的命令组合完成复杂的工作,自动化执行命令,提高工作效率: 减少手工命令的输入,一定程度上避免人为错误: 将软件或应用的安装及 ...

  8. 关于对于Java中Entity以及VO,以及DTO中Request对象序列化的学习

    关于 Serializable的探讨 前提引入 是由于软件测试上有同学提到说,什么该字段在程序刚运行时,导致jvm激增,所以吸引了我的注意 回顾代码 MybatisPlus Generator自动生成 ...

  9. vue-cli3 项目路由 history 模式部署到 nginx 服务器

    1.项目修改vue.config.js增加 publicPath: '/' 2.nginx配置 location / {#访问前端页面 root /data/dist;#vue项目存放路径 index ...

  10. MySQL查看实时执行的SQL语句

    MySQL默认不能实时查看执行的SQL语句,因为这会消耗一定的资源. 要开启这个功能,稍微配置一下,打开这个LOG记录就可以了. 1 查看LOG功能 首先,查看是否已经开启实时SQL语句记录. mys ...