开发环境VC6.0
工具栏需要自己完全编写代码添加,不需要画界面
在StdAfx.h里定义
#define ICONSUM 5
在编写的主框体类C***Dlg里添加如下变量:
private:
CImageList m_ImageList;
CToolBarCtrl m_ToolBar;
在C***Dlg类的On
//创建工具栏
TBBUTTON tbButton[ICONSUM] = {0}; //工具栏按钮数组
m_ImageList.Create(32, 32, ILC_COLOR32 | ILC_MASK, 0, 0); //创建工具栏用的图像列表
m_ImageList.Add(::AfxGetApp()->LoadIcon(IDI_ICON5)); //加载相应的图标
m_ImageList.Add(::AfxGetApp()->LoadIcon(IDI_ICON3));
m_ImageList.Add(::AfxGetApp()->LoadIcon(IDI_ICON1));
m_ImageList.Add(::AfxGetApp()->LoadIcon(IDI_ICON2));
m_ImageList.Add(::AfxGetApp()->LoadIcon(IDI_ICON4));
m_ToolBar.Create(WS_CHILD | WS_VISIBLE, CRect(0, 0, 0, 0), this, 0); //创建工具栏
m_ToolBar.SetImageList(&m_ImageList); //为工具栏附加图标列表
for(int i=0; i< ICONSUM; i++)
{
tbButton[i].dwData = NULL;
tbButton[i].fsState = TBSTATE_ENABLED; //按钮状态
tbButton[i].fsStyle = (BYTE)TBSTYLE_FLAT; //按钮风格
tbButton[i].iBitmap = i; //设置图标
}
tbButton[0].idCommand = ID_ATTENDANCE_RECORD; //为每个按钮指定一个命令ID
tbButton[1].idCommand = IDM_REQUEST_EMPLOYEE;
tbButton[2].idCommand = IDM_PAYLIP;
tbButton[3].idCommand = IDM_PORTFOLIO;
tbButton[4].idCommand = ID_ABOUT;
m_ToolBar.AddButtons(ICONSUM, tbButton); //为工具栏添加按钮
m_ToolBar.AutoSize(); //自动调整工具栏大小
m_ToolBar.SetStyle(TBSTYLE_FLAT | CCS_TOP); //设置工具栏风格
首先创建一个基于对话框的程序。
然后在工作区导入图标文件,再在类中定义my_toolbar,my_imagelist对象。
在On
代码如下:
//向列表中添加图标
m_imagelist.Create(32,32,ILC_COLOR24|ILC_MASK,1,1);
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ICON1));
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ICON2));
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ICON3));
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ICON4));
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ICON5));
m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ICON6));
UINT arry[10];
for(int i=0;i<6;i++)
{
if(i==3) //第四个按钮为分割条;
arry[i]=ID_SEPARATOR;
else
arry[i]=i+1001;
}
m_toolbar.Create(this);
m_toolbar.SetButtons(arry,7);
m_toolbar.SetButtonText(0,"登录系统"); //图片下面添加文字;
m_toolbar.SetButtonText(1,"文件管理");
m_toolbar.SetButtonText(2,"计算统计");
m_toolbar.SetButtonText(4,"联系方式");
m_toolbar.SetButtonText(5,"学生管理");
m_toolbar.SetButtonText(6,"远程连接");
m_toolbar.GetToolBarCtrl().SetButtonWidth(50,70);
m_toolbar.GetToolBarCtrl().SetImageList(&m_imagelist);
m_toolbar.SetSizes(CSize(70,50),CSize(32,32));//设置大小;
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);
参考文献: http://www.cnblogs.com/kzloser/archive/2012/11/26/2787341.html
http://www.cnblogs.com/afarmer/archive/2011/05/07/2039534.html