集合条是Visual C++ 6.0中新增的,也是一种控制条。集合条中可以包含多种子窗口类型,通常都是一些控件,如按钮、文本编辑框等。集合条能将其子窗口在特定的位图背景上显示出来。使用集合条可以创建漂亮的程序界面。图8-6中显示了一个典型的集合条,这就是Internet Explorer 4.0的界面。

图8-6 典型的集合条
集合条(CReBar)也使用了集合条控件(CReBarCtrl)来建立。
在使用控制条的时候,很少直接使用CControlBar类或直接从CControlBar类派生子类,更多的是使用其子类或从其子类派生自己的类。
以上简要介绍了控制条类极其子类的一些基本的知识,从下一节开始具体介绍如何使用这些控制条。对于对话框条,我们仅介绍其创建方法,其使用方法可以参照无模式对话框;重点介绍的是工具条、状态条和集合条。
在“消息与命令”一章中,介绍了如何初步地使用工具条,仅仅介绍了如何修改工具条资源,如何将工具条按钮与菜单命令联系起来,如何改变工具条按钮的状态等等,而且使用的是AppWizard为用户创建的缺省的工具条。在本节中,将详细解释应用程序框架是如何建立工具条的,如何创建新的定制的工具条,如何控制工具条的显示与隐藏等知识,以及如何使用状态条,如何向状态条中添加新的面板,如何控制状态条的显示等。
在利用AppWizard生成应用程序的时候,只要在步骤4选中了Docking toolbar和Initial status bar选项,AppWizard为用户生成的应用程序就拥有一个缺省的工具条和状态条。
为了便于说明,需要建立一个例子程序TestBars。利用AppWizard生成该应用程序框架。在创建过程中,按以下步骤操作:
(1)选择单文档界面,选中文档/视图结构支持,同时选择资源类型为英语。
(2)由于本程序不需要支持任何数据库技术,选择None。
(3)由于本程序不需要支持任何形式的复合文档,选择None;同时本程序也不需要包含ActiveX控件,故清除缺省对ActiveX controls的选中。
(4)本程序不涉及有关打印的知识,故清除Print and print preview选项;但需要缺省的工具条和状态条,故选中Docking toolbar和Initial status bar选项;工具条风格选择Normal;其余接受缺省选择即可。
(5)接受缺省选择。