MFC-Toolbar(24位真彩色)
阿新 • • 發佈:2019-01-03
先準備一個24位的真彩色工具欄BMP圖片
如圖所示:
然後新增到Bitmap資源裡
接著上一篇16位工具欄的程式碼,進行稍微修改即可
//建立Toolbar
m_toolbar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP);
//載入Toolbar //16位的工具欄按鈕個數決定24位的工具欄按鈕個數
//因為那些bmp點陣圖是顯示在工具欄按鈕上的
m_toolbar.LoadToolBar(IDR_TOOLBAR1);
CImageList image;
CBitmap bmp;
//載入24位BMP工具欄
bmp.LoadBitmap(IDB_COLD);
//建立影象列表 //ILC_MASK表示背景透明 //6個工具按鈕,每次增加一個
image.Create(32, 32, ILC_MASK | ILC_COLOR24, 6, 1);
//把bmp加入到影象列表
image.Add(&bmp,RGB(255,255,255));//背景顏色為白色
m_toolbar.GetToolBarCtrl().SetImageList(&image);
image.Detach();//用完之後解綁
bmp.Detach(); //用完之後解綁
//如果顯示不完全,就調整一下大小
CRect rect;
//獲取第一個工具按鈕的大小
m_toolbar.GetItemRect(0, &rect);
//第一個引數是按鈕大小,第二個是圖片大小
m_toolbar.SetSizes(rect.Size(), CSize(32, 32));
//調整工具欄的位置
RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0);
效果如圖:
後面三個按鈕還沒有進行訊息處理.