VC6显示256色工具栏
首先添加类TrueColorToolBar(附件已上传)
然后在MainFrm.h中添加下列代码
#define TOOLBAR_DRAW_BUTTON_WIDTH 24#include "TrueColorToolBar.h"
并且把m_wndToolBar的类型由CToolBar改成CTrueColorToolBar
修改MainFrm.cpp文件
...m_wndToolBar.SetBorders(1, 1, 1, 1);if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||!m_wndToolBar.LoadToolBar(IDR_MAINFRAME)){TRACE0("Failed to create toolbar\n");return -1; // fail to create}m_wndToolBar.ModifyStyle(0, TBSTYLE_FLAT);m_wndToolBar.LoadTrueColorToolBar(TOOLBAR_DRAW_BUTTON_WIDTH,IDB_BITMAP_NORMAL,IDB_BITMAP_HOT,IDB_BITMAP_DISABLE);...最后在资源文件中导入工具栏的图片文件即可。
注意:
1. 所有图片根据统一尺寸,合并成一个BMP文件
2. IDB_BITMAP_NORMAL对应工具栏普通状态下的显示样式,IDB_BITMAP_HOT对应鼠标移动至按钮上的显示样式,IDB_BITMAP_DISABLE对应按钮无效时的显示样式。
3. 无相应图片时,写0
4. 工具栏的高度貌似需要手动调整
Demo工程ToolBar.rar也已上传,WinXP + VC6编译通过