工具栏是包含控件的位图图像的 控件栏 。 这些图像的行为类似于下推按钮、复选框或单选按钮。 MFC 提供用于管理工具栏的 CToolbar 类。
如果启用它,MFC 工具栏的用户可以将它们停靠在窗口边缘,或者将它们“浮动”到应用程序窗口中的任意位置。 MFC 不支持自定义工具栏,如开发环境中的工具栏。
MFC 还支持工具提示:小弹出窗口,用于描述工具栏按钮在按钮上放置鼠标时的目的。 默认情况下,当用户按下工具栏按钮时,状态栏中会显示一个状态字符串(如果有)。 你可以激活“fly by”状态栏,更新以显示状态字符串时鼠标定位在按钮上而不按它。
注释
从 MFC 版本 4.0 开始,工具栏和工具提示是使用 Windows 95 及更高版本功能实现的,而不是特定于 MFC 的先前实现。
为了向后兼容,MFC 会在类 COldToolBar
中保留较旧的工具栏实现。 MFC 的早期版本的文档介绍 COldToolBar
如下 CToolBar
。
通过在应用程序向导中选择工具栏选项,在程序中创建第一个工具栏。 还可以创建其他工具栏。
本文介绍了以下内容:
工具栏按钮
工具栏中的按钮类似于菜单中的项。 这两种类型的用户界面对象都生成命令,程序通过提供处理程序函数来处理这些命令。 通常,工具栏按钮复制菜单命令的功能,为相同的功能提供替代用户界面。 只需为按钮和菜单项提供相同的 ID 即可排列此类重复。
你可以使工具栏中的按钮出现并充当下推按钮、复选框或单选按钮。 有关详细信息,请参阅 类 CToolBar。
停靠和浮动工具栏
MFC 工具栏可以:
保持固定在其父窗口的一侧。
被用户拖动并“停靠”或附加到你指定的父窗口的任何一侧或两侧。
在自己的迷你框架窗口中“浮动”或从框架窗口分离,以便用户可以将其移动到任何方便的位置。
浮动时调整大小。
有关详细信息,请参阅文章 “停靠”和“浮动工具栏”。
工具栏和工具提示
还可以使用 MFC 工具栏显示“工具提示”-小弹出窗口,其中包含工具栏按钮用途的简短文本说明。 当用户将鼠标移到工具栏按钮上时,工具提示窗口将弹出以提供提示。 有关详细信息,请参阅 工具栏工具提示一文。
CToolBar 和 CToolBarCtrl 类
可以通过 类 CToolBar 管理应用程序的工具栏。 从 MFC 版本 4.0 开始, CToolBar
已重新实施以使用 Windows 95 或更高版本和 Windows NT 版本 3.51 或更高版本下可用的工具栏通用控件。
这种重新实施会导致工具栏的 MFC 代码减少,因为 MFC 使用作系统支持。 重新实施还提高了功能。 可以使用 CToolBar
成员函数作工具栏,也可以获取对基础 CToolBarCtrl 对象的引用,并调用其成员函数进行工具栏自定义和其他功能。
小窍门
如果你在旧版 MFC 实施 CToolBar
方面投入了大量资金,该支持仍可用。 请参阅 使用旧工具栏的文章。
另请参阅 MFC 常规示例 DOCKTOOL。
工具栏位图
构造后,对象 CToolBar
通过加载包含每个按钮一个图像的位图来创建工具栏图像。 应用程序向导创建一个标准工具栏位图,可以使用 Visual C++ 工具栏编辑器进行自定义。