最近寫個程序,想更換一下難看的系統(tǒng)工具條,可是VC里面只支持16色的工具條,看了很多網(wǎng)上的幫助,終于搞定了。對于一個大牛程序員來說這 可能很小兒科,可是畢竟咱們不是大牛嘛。所以寫出來以此留念,新疆軟件開發(fā)網(wǎng)。
CImageList imageList; CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP2); //IDB_BITMAP2是一張拼好的bmp圖。有人說一張一張的用程序拼接也是可以的,可是為什么要把簡單的或者 可以由美工干的活壓給自己呢。學(xué)著把工作推給別人做是個聰明的程序員。呵呵。 imageList.Create(32,32,TRUE | ILC_COLOR8,6,1); /*前兩個參數(shù)分別為圖標(biāo)按鈕的寬和高 ILC_ COLOR8說明以256色調(diào)色板來顯示圖標(biāo)。而TRUE則指明了以透明方式來顯示圖標(biāo)。兩者進(jìn)行"按位或"運(yùn)算后的意義變?yōu)椋阂酝该鞣绞絹盹@示256色圖標(biāo)。 第四和第五個參數(shù)則分別為:初始圖標(biāo)個數(shù)和新增圖標(biāo)時對象自動申請內(nèi)存空間的步長。如果在大批量操作圖標(biāo),并且需要不斷的增刪圖標(biāo)時,設(shè)置第五個參數(shù)可以改變程序的性能,如果第五個參數(shù)設(shè)置的比較適中則可以避免程序反復(fù)的申請和釋放內(nèi)存空間。 */ imageList.Add(&bitmap,RGB(236,232,215)); m_wndToolBar.GetToolBarCtrl().SetImageList(&imageList); imageList.Detach(); bitmap.Detach();
//圖標(biāo)失效時的圖標(biāo)(灰色的) bitmap.LoadBitmap(IDB_DIS_TOOLBAR); imageList.Create(32,32,TRUE | ILC_COLOR8,6,1); imageList.Add(&bitmap,RGB(236,232,215)); m_wndToolBar.GetToolBarCtrl().SetDisabledImageList(&imageList); imageList.Detach(); bitmap.Detach();
|