1. 程式人生 > >MFC-Toolbar(24位真彩色)

MFC-Toolbar(24位真彩色)

先準備一個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);

效果如圖:

後面三個按鈕還沒有進行訊息處理.