全部显示

命令栏概述

   

本主题中的某些内容可能不适用于某些语言。

在 Microsoft Office 中,工具栏、菜单栏和快捷菜单都可由同一种类型的对象进行编程控制,这类对象就是命令栏。以下所列的各项在 Visual Basic for Applications 中均可由 CommandBar 对象代表:

对任意内置菜单栏或工具栏均可进行修改,也可为 Visual Basic 应用程序创建和修改自定义工具栏、菜单栏和快捷菜单栏。可通过工具栏中单个按钮的形式来提供应用程序的功能,也可作为菜单中的一组命令名提供给用户。因为工具栏和菜单都是命令栏,所以在其中可使用同样的控件。例如,下图所示的固定工具栏包含三个按钮。

包含三个按钮的固定工具栏

下图所示的菜单包含三个命令,这三个命令与前面图示中的按钮作用相同,但在这里却作为菜单项显示。

包含三个菜单项的菜单

在 Microsoft Office 中,菜单栏和工具栏都可包含菜单。下图所示的浮动工具栏包含三个按钮,还包含一个菜单,同样的三个命令在该菜单中作为菜单项显示。

包含三个按钮及带三个菜单项的菜单的浮动工具栏

在 Visual Basic 中,按钮和菜单项均由 CommandBarButton 对象代表。显示菜单和子菜单的弹出式控件CommandBarPopup 对象代表。在下图中,名为“菜单”的控件和名为“子菜单”的控件均为弹出式控件,它们分别显示菜单和子菜单。该菜单和子菜单都是独立的 CommandBar 对象,具有各自的一套控件。

显示菜单和子菜单的弹出式控件

在 Microsoft Office 中,还可给任意命令栏添加文字框、下拉式列表框和组合框。这三种类型的控件在 Visual Basic 中均可由 CommandBarComboBox 对象代表。

注意   命令栏控件和 ActiveX 控件尽管具有相似的外观和功能,但两者并不相同。所以既不能在命令栏中添加 ActiveX 控件,也不能在文档或表格中添加命令栏控件。

容器应用程序中的内置命令栏控件在 Visual Basic 中也可由 CommandBarButtonCommandBarPopupCommandBarComboBox 对象代表,尽管它们的外观和功能可能比用户添加的控件更复杂。对内置控件可修改其位置和外观,但不能修改它们的内置功能,然而可为内置控件指定一个自定义宏来完全取代其内置功能。