24位真彩色工具栏

来源:互联网 发布:鲁南制药知乎 编辑:程序博客网 时间:2024/05/02 06:09

以位图的形式添加到资源里

然后在初始化函数里进行下列操作

        m_toolbar.CreateEx(this,TBSTYLE_FLAT,WS_CHILD|WS_VISIBLE|CBRS_TOP);  //创建工具栏//m_toolbar.LoadToolBar(IDR_TOOLBAR1);    //加载资源CImageList imgs;CBitmap bmp;bmp.LoadBitmap(IDB_BITMAP1);   //把位图加载进来imgs.Create(32,32,ILC_MASK|ILC_COLOR24,3,1);   //创建图像列表imgs.Add(&bmp,RGB(255,255,255));      //把bmp加进去,指定白色为透明背景色m_toolbar.GetToolBarCtrl().SetImageList(&imgs);   //把图片列表给工具栏imgs.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);  //摆放工具栏的位置

如果想让在鼠标放到按钮的时候,按钮的图标发生改变(颜色变深),则需要在上述程序里添加一段程序,如下所示:

        m_toolbar.CreateEx(this,TBSTYLE_FLAT,WS_CHILD|WS_VISIBLE|CBRS_TOP);  //创建工具栏//m_toolbar.LoadToolBar(IDR_TOOLBAR1);    //加载资源CImageList imgs;CBitmap bmp;bmp.LoadBitmap(IDB_BITMAP1);   //把位图加载进来imgs.Create(32,32,ILC_MASK|ILC_COLOR24,3,1);   //创建图像列表imgs.Add(&bmp,RGB(255,255,255));      //把bmp加进去,指定白色为透明背景色m_toolbar.GetToolBarCtrl().SetImageList(&imgs);   //把图片列表给工具栏imgs.Detach();bmp.Detach();   //撤销bmp.LoadBitmap(IDB_HOT);   //把位图加载进来imgs.Create(32,32,ILC_MASK|ILC_COLOR24,3,1);   //创建图像列表imgs.Add(&bmp,RGB(255,255,255));      //把bmp加进去,指定白色为透明背景色m_toolbar.GetToolBarCtrl().SetHotImageList(&imgs);   //把图片列表给工具栏imgs.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);  //摆放工具栏的位置


0 0