Como: Criar barras de ferramentas do Office por programação

Se aplica a

As informações contidas neste tópico se aplicam apenas às especificado Ferramentas do Visual Studio para o Office projetos e as versões do Microsoft Office.

Tipo de Projeto

  • Projetos de nível de documento

  • Projetos de nível de aplicativo

Versão do Microsoft Office

  • Microsoft Office 2003

For more information, see Recursos disponíveis pelo aplicativo e o tipo de projeto.

Este exemplo cria uma barra de ferramentas chamada Test no Microsoft Office Word 2003.Ele aparece próximo ao meio do documento e contém dois botões.Quando um botão é clicado, uma caixa de mensagem aparece.Para obter um exemplo de como personalizar a interface do usuário no Microsoft Office Excel 2003, consulte Como: Criar menus do Office por programação.

Adicione o seguinte código à classe ThisDocument:

Observação:

declare seus variáveis de barra de comando na classe nível em vez de dentro do método onde eles são chamados.Isso garante que as variáveis de barra de comando permanecerá no escopo desde que o aplicativo seja Executando.Caso contrário, o item é removido pelo lixo coleção e seu código do manipulador de eventos não é executado.

Exemplo

' 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);
}

Consulte também

Tarefas

Como: Criar menus do Office por programação

Demonstra Passo a passo: Criar menus de atalho para Favoritos

Conceitos

Personalização de IU do Office

Noções básicas sobre parâmetros opcionais in Office Solutions