툴바에서 256 이상의 컬러 사용 DarkKaiser, 2007년 7월 1일2023년 9월 4일 기존의 리소스는 그대로 두고 ToolBar에 사용할 256색 이상의 Bitmap Image List를 하나 만듬니다. 그리고 나서 CToolBarCtrl의 SetImageList(), SetHotImageList(), SetDisabledImageList()를 이용하면 간단히 256이상의 ToolBar를 만들 수 있습니다. 예제를 참고하세요. void CToolBar256::SetBitmap(UINT nIDResource, CSize ImageSize, UINT nButton, COLORREF colMask) { CImageList ToolBarImageList; CBitmap ToolBarBitmap; ToolBarBitmap.LoadBitmap(nIDResource); ToolBarImageList.Create(ImageSize.cx, ImageSize.cy, ILC_MASK | ILC_COLORDDB, nButton, 0); ToolBarImageList.Add(&ToolBarBitmap, colMask); GetToolBarCtrl().SetImageList(&ToolBarImageList); ToolBarImageList.Detach(); ToolBarBitmap.Detach(); } void CToolBar256::SetHotBitmap(UINT nIDResource, CSize ImageSize, UINT nButton, COLORREF colMask) { CImageList ToolBarImageList; CBitmap ToolBarBitmap; ToolBarBitmap.LoadBitmap(nIDResource); ToolBarImageList.Create(ImageSize.cx, ImageSize.cy, ILC_MASK | ILC_COLORDDB, nButton, 0); ToolBarImageList.Add(&ToolBarBitmap, colMask); GetToolBarCtrl().SetHotImageList(&ToolBarImageList); ToolBarImageList.Detach(); ToolBarBitmap.Detach(); } void CToolBar256::SetDisabledBitmap(UINT nIDResource, CSize ImageSize, UINT nButton, COLORREF colMask) { CImageList ToolBarImageList; CBitmap ToolBarBitmap; ToolBarBitmap.LoadBitmap(nIDResource); ToolBarImageList.Create(ImageSize.cx, ImageSize.cy, ILC_MASK | ILC_COLORDDB, nButton, 0); ToolBarImageList.Add(&ToolBarBitmap, colMask); GetToolBarCtrl().SetDisabledImageList(&ToolBarImageList); ToolBarImageList.Detach(); ToolBarBitmap.Detach(); } C/C++/VC++ toolbar툴바