更新:2007 年 11 月
| 适用对象 | 
|---|
| 本主题中的信息仅适用于指定的 Visual Studio Tools for Office 项目和 Microsoft Office 版本。 项目类型 
 Microsoft Office 版本 
 有关更多信息,请参见按应用程序和项目类型提供的功能。 | 
此示例在 Microsoft Office Word 2003 中创建一个称为“测试”的工具栏。该工具栏出现在靠近文档中部的位置,其中包含两个按钮。单击按钮时,会出现一个消息框。有关如何在 Microsoft Office Excel 2003 中自定义用户界面的示例,请参见如何:以编程方式创建 Office 菜单。
向 ThisDocument 类中添加下面的代码。
| .gif) 说明: | 
|---|
| 请在类级别,而不要在调用变量的方法中声明命令栏变量。这样可以确保只要应用程序运行,命令栏变量便保持在范围内。否则,此项便会被垃圾回收移除,而事件处理程序代码也将无法运行。 | 
示例
' Create the command bar variables at the class level.
Dim commandBar As Office.CommandBar
Dim firstButton As Office.CommandBarButton
Dim secondButton As Office.CommandBarButton
Private Sub ThisDocument_Startup(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles Me.Startup
    AddToolbar()
End Sub
Private Sub AddToolbar()
    Try
        commandBar = Me.CommandBars("Test")
    Catch ex As ArgumentException
        ' Toolbar named Test does not exist so we should create it.
    End Try
    If commandBar Is Nothing Then
        commandBar = Application.CommandBars.Add("Test", 1, False, True)
    End If
    Try
        ' Add a button to the command bar and create an event handler.
        firstButton = CType(commandBar.Controls.Add(1), Office.CommandBarButton)
        firstButton.Style = Office.MsoButtonStyle.msoButtonCaption
        firstButton.Caption = "button 1"
        firstButton.Tag = "button1"
        AddHandler firstButton.Click, AddressOf ButtonClick
        ' Add a second button to the command bar and create an event handler.
        secondButton = CType(commandBar.Controls.Add(1), Office.CommandBarButton)
        secondButton.Style = Office.MsoButtonStyle.msoButtonCaption
        secondButton.Caption = "button 2"
        secondButton.Tag = "button2"
        AddHandler secondButton.Click, AddressOf ButtonClick
        commandBar.Visible = True
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try
End Sub
' Handles the event when a button on the new toolbar is clicked.
Private Sub ButtonClick(ByVal ctrl As Office.CommandBarButton, ByRef Cancel As Boolean)
    MsgBox("You clicked: " & ctrl.Caption)
End Sub
// Create the command bar variables at the class level.
Office.CommandBar commandBar;
Office.CommandBarButton firstButton;
Office.CommandBarButton secondButton;
private void ThisDocument_Startup(object sender, System.EventArgs e)
{
    AddToolbar();
}
private void AddToolbar()
{
    try
    {
        commandBar = Application.CommandBars["Test"];
    }
    catch (ArgumentException e)
    {
        // Toolbar named Test does not exist so we should create it.
    }
    if (commandBar == null)
    {
        // Add a commandbar named Test.
        commandBar = Application.CommandBars.Add("Test", 1, missing, true);
    }
    try
    {
        // Add a button to the command bar and an event handler.
        firstButton = (Office.CommandBarButton)commandBar.Controls.Add(
            1, missing, missing, missing, missing);
        firstButton.Style = Office.MsoButtonStyle.msoButtonCaption;
        firstButton.Caption = "button 1";
        firstButton.Tag = "button1";
        firstButton.Click += new Office._CommandBarButtonEvents_ClickEventHandler(ButtonClick);
        // Add a second button to the command bar and an event handler.
        secondButton = (Office.CommandBarButton)commandBar.Controls.Add(
            1, missing, missing, missing, missing);
        secondButton.Style = Office.MsoButtonStyle.msoButtonCaption;
        secondButton.Caption = "button 2";
        secondButton.Tag = "button2";
        secondButton.Click += new Office._CommandBarButtonEvents_ClickEventHandler(ButtonClick);
        commandBar.Visible = true;
    }
    catch (ArgumentException e)
    {
        MessageBox.Show(e.Message);
    }
}
// Handles the event when a button on the new toolbar is clicked.
private void ButtonClick(Office.CommandBarButton ctrl, ref bool cancel)
{
    MessageBox.Show("You clicked: " + ctrl.Caption);
}