zoukankan      html  css  js  c++  java
  • [MFC] 如何更改MFC程序图标

    方法一:

    >_<:找一张ICO图标,替换programname/res/programname.ico文件,就可以啦,这时候你运行后得到的图标可能还是原来MFC的默认图标,这时候你只要把工程目录下的Debug和Release文件删除掉,重新编译生成就能得到更换图标后的程序。或者直接RebuildAll,再运行。

    >_<:当然,你如果你在你的工程里操作也没有问题,在工作区的resorce页中的Icon中把ID为IDR_MAIN的图标资源删除,再导入自己制作的图标资源,把资源ID改为IDR_MAIN就OK啦。

     

    方法二:

    >_<:上面这个的工作十分简单,但是如果要在程序中写代码改变我们应用程序的图标,比如有时候我们要在程序中动态改变程序的标题栏、任务栏图标或是托盘的图标,那就要花点功夫了。其实也不是很难,主要用几个函数搞定,如果是MFC主要就是 LoadIcon和 SetIcon。

      比如我们在OnInitDialog或是OnCreate中加入:

      AfxGetApp()->LoadIcon(IDI_ICON1);

      SetIcon(ico,true);

      SetIcon(ico,false);

    >_<:另外你可能要问,MFC程序默认是怎么加载它的图标的,其实很简单,在主对话框的构造函数中有这样一句:

      m_hIcon = AfxGetApp()->LoadIcon(IDR_MAIN);

    >_<:这就是加载默认图标的,而在OnInitDialog初始化函数中有这两行代码:

      SetIcon(m_hIcon, TRUE); // Set big icon

      SetIcon(m_hIcon, FALSE); // Set small icon

    >_<:这两行代码就将应用程序的图标设置好了。到这里聪明的你应该能触类旁通了吧,其实在MFC中更换或设置图标的方式有很多种,像QQ这样动态更换图标也不是一件太难的事。

    >_<:摘自 http://jingyan.baidu.com/article/4853e1e539c22c1908f72649.html

  • 相关阅读:
    循环结构
    位运算符
    Switch 选择结构
    if结构和逻辑运算符
    变量和运算符
    [luogu1090 SCOI2003] 字符串折叠(区间DP+hash)
    [luogu2329 SCOI2005] 栅栏(二分+搜索)
    [luogu 4886] 快递员
    [luogu4290 HAOI2008]玩具取名(DP)
    [luogu2624 HNOI2008]明明的烦恼 (prufer+高精)
  • 原文地址:https://www.cnblogs.com/zjutlitao/p/3567222.html
Copyright © 2011-2022 走看看