为VC对话框添加工具条 孟学桢 2000年 第4期   对于基于对话框的应用程序,MFC AppWizard还没有对工具条的支持,但可以通过使用CToolBar类来构造生成工具条,我们下面介绍如何为对话框程序添加工具条。   用MFC AppWizard(EXE)生成一个基于对话框的应用程序,接受其默认设置,取名为demodialog。   给应用程序添加一个Toolbar的名称为IDR_TOOLBAR1的工具条资源,名称分别如下:   ID_NEW ∥生成新的程序等   ID_FILE_OPEN ∥打开文件   ID_FILE_SAVE ∥保存文件   ID_EXIT ∥退出程序   然后在对话框的头文件中添加如下的成员变量:   CToolBar m_wndToolBar;   在resoure编辑框中编辑这些toolbar资源,设置好大小和彼此的距离,添加工具条前,需要初始化工具条,添加如下所示的代码到demodialog.cpp的OnInitDialog()函数中。   如果要使工具条是平面浮动的,可以添加如下的代码到对话框初始化函数中。   ……   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_TOOLBAR1))   {   TRACE0(″创建工具条失败\n″);   return -1;∥不能创建,返回报-1   }RepositionBar   s(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);∥定位工具条   ……   如果要使工具条是立体静态的,添加如下的代码到对话框初始化函数中。   ……   if(!m_wndToolBar.Create(this)||!m_wndToolBar.LoadToolBar(IDR_TOOLBAR1))   {   TRACE(″创建工具条失败\n″);   return -1;∥不能创建,返回   }RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);∥定位工具条   ……   编译生成的程序,就实现了对话框的工具条,如果需要添加另外的对话框的工具条代码实现,用ClassWizard为工具条添加消息映射即可。