MFC修改窗口图标

  Visual Studio写MFC应用程序,默认的程序左上角图标是自带的(如下图),想要自己个性化定制一个新的图标则需要以下几个步骤。

 

一、准备工作(icon图标)

  首先准备一个自己个性化定制的图片,然后需要将图片转换成.ico格式。这里推荐一个快捷的小助手:https://www.bitbug.net/   可以快速生成一个小图标。

  将生成好的图标放置在资源res路径下。

 

二、新建MFC工程

  新建一个MFC应用程序,调到资源视图,会看到自带的icon如下图。资源的ID是IDR_MAINFRAME。自己再添加一个进去(.rc文件夹右键-->添加资源-->ICON-->导入-->.ico文件),添加后,在属性里面自己修改一下名称就可以了。

  

 

三、初始化设置

  资源添加成功后,在OnInitDialog()中,找到如下代码,修改为自己添加的图标就可以了。

1 m_hIcon = AfxGetApp()->LoadIcon(IDI_ICON_CAPTION);

 

四、完成

  结果如下。

  

 

PS:VS直接运行,图标已经更改可以使用,但是在直接.exe时,界面仍然是旧的图标,原因是Windows有图标缓存,所以默认还是显示那个旧的图标。

  解决方式:1. 删除图标缓存数据库,路径如下:C:\Users\XXX\AppData\Local\ IconCache.db

       2. 打开resource.h,MFC自动生成的IDR_MAINFRAME的ID为128,自己添加的ICON的ID都大于这个值,所以只需将自己添加的ICON ID小于128即可。

  删除后便可看到图标的变化了。

posted @ 2021-09-28 14:24  缓下脚步  阅读(509)  评论(0编辑  收藏  举报