VC++更改程序图标
很多時(shí)候我們對(duì)于VC框架應(yīng)用程序的默認(rèn)圖標(biāo)十分不滿意,所以我們來(lái)將把它換掉。
第一種方法:直接替換;
其實(shí)對(duì)于VC框架應(yīng)用程序我們可以不寫一行代碼把那個(gè)默認(rèn)的圖標(biāo)換掉。找一張ICO圖標(biāo),替換programname/res/programname.ico文件,就可以啦,然后重新編譯生成就能得到更換圖標(biāo)后的程序。或者直接RebuildAll,再運(yùn)行,怎么樣很簡(jiǎn)單吧。當(dāng)然,你如果你在你的工程里操作也沒有問(wèn)題,在工作區(qū)的resorce頁(yè)中的Icon中把ID為IDR_MAIN的圖標(biāo)資源刪除,再導(dǎo)入自己制作的圖標(biāo)資源,把資源ID改為IDR_MAIN就OK啦。
第二種方法:加載代碼;
上面這個(gè)的工作十分簡(jiǎn)單,但是如果要在程序中寫代碼改變我們應(yīng)用程序的圖標(biāo),比如有時(shí)候我們要在程序中動(dòng)態(tài)改變程序的標(biāo)題欄、任務(wù)欄圖標(biāo)或是托盤的圖標(biāo),那就要花點(diǎn)功夫了。其實(shí)也不是很難,主要用幾個(gè)函數(shù)搞定,如果是VC主要就是 LoadIcon和 SetIcon。
比如我們?cè)贠nInitDialog或是OnCreate中加入:
AfxGetApp()->LoadIcon(IDI_ICON1);
SetIcon(ico,true);
SetIcon(ico,false);
另外你可能要問(wèn),MFC程序默認(rèn)是怎么加載它的圖標(biāo)的,其實(shí)很簡(jiǎn)單,在主對(duì)話框的構(gòu)造函數(shù)中有這樣一句:
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAIN);
這就是加載默認(rèn)圖標(biāo)的,而在OnInitDialog初始化函數(shù)中有這兩行代碼:
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
這樣代碼就將應(yīng)用程序的圖標(biāo)設(shè)置好了。
轉(zhuǎn)載于:https://www.cnblogs.com/killer-xc/p/5228413.html
總結(jié)
以上是生活随笔為你收集整理的VC++更改程序图标的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: maven,spring,mybatis
- 下一篇: C_C++指针指针应用详解