Demonstra Passo a passo: Criar menus de atalho para Favoritos

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

Versão do Microsoft Office

  • Word 2007

  • Word 2003

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

Esta explicação passo a passo demonstra como criar menus de atalho para controles de Bookmark uma personalização de nível de documento do Word.Quando um usuário clica com o botão direito do mouse o texto em um indicador, um menu de atalho aparece e oferece as opções de usuário para Formatação o texto.

Essa explicação passo a passo ilustra as seguintes tarefas:

  • Adicionar texto e indicadores ao documento em um projeto de nível de documento em tempo de design.

  • Criando um menu de atalho.

  • Verificando a sobreposição de indicadores.

Observação:

Seu computador pode mostrar diferentes nomes ou localizações para alguns dos elementos de interface do usuário do Visual Studio nas instruções a seguir. A edição do Visual Studio que você possui e as configurações que você usa determinam esses elementos. Para obter mais informações, consulte Configurações do Visual Studio.

Pré-requisitos

Para completar este passo a passo, são necessários os seguintes componentes:

  • Ferramentas do Visual Studio para o Office (um componente opcional do O Visual Studio 2008 Professional e Visual Studio Team System).

  • O Microsoft Office Word 2003 ou Microsoft Office Word 2007.

Ferramentas do Visual Studio para o Office é instalado por padrão com as versões listadas do Visual Studio.Para Marcar se ele está instalado, Marcar Instalando o Visual Studio Tools para Office.

Criando o projeto

A Primeiro etapa é criar um projeto de documento do Word no Visual Studio.

Para criar um novo projeto

  • Criar um projeto de documento do Word com o nome do menu de atalho Meus indicador.No assistente, Selecionar Criar um documento novo.For more information, see Como: Criar o Visual Studio Tools para projetos do Office.

    O Visual Studio abre o novo documento do Word no designer e adiciona o projeto de meu menu de atalho indicador para Gerenciador de Soluções.

Adicionando texto e indicadores o documento

Adicionar algum texto ao documento e adicione dois indicadores sobrepostos.

Para adicionar texto a seu documento

  • tipo o seguinte texto.

    Este é um exemplo de criação de um menu de atalho quando você direita-Clique o texto em um indicador.

Para adicionar um Controlarar de indicador a seu documento

  1. Na guia Controles do Word de De caixa de ferramentas, arraste um controle de Bookmark ao seu documento.

    A caixa de diálogo Adicionar indicador Controlarar aparece.

  2. Selecionar as palavras Criar um menu de atalho quando clique o texto com o botão direito do mouse e clique em OK.

    bookmark1 é adicionado ao documento.

  3. Adicionar outro Controlarar de Bookmark para as palavras Clique com o botão direito do mouse o texto em um indicador.

    bookmark2 é adicionado ao documento.

    Observação:

    As palavras Clique com o botão direito do mouse No texto estão em ambos bookmark1 e bookmark2.

Quando você Adicionar um indicador a um documento em tempo de design, um Controlarar de Bookmark é criado.Você pode programar vários eventos do indicador.Você pode Gravar código no evento BeforeRightClick do indicador para que quando o usuário clica com o botão direito no indicador texto, um menu de atalho seja exibido.

Criando o menu Abreviado

Para criar o menu de atalho

  1. Em Gerenciador de Soluções, clique com o botão direito do mouse em ThisDocumente clique em Exibir Code.

  2. Declare as variáveis CommandBar e uma variável de indicador no nível de classe.

    Private commandBar As Office.CommandBar
    Private selectedBookmark As Microsoft.Office.Tools.Word.Bookmark
    WithEvents boldText As Office.CommandBarButton
    WithEvents ItalicText As Office.CommandBarButton
    
    private Office.CommandBar commandBar;
    private Office.CommandBarButton boldText;
    private Office.CommandBarButton italicText;
    private Microsoft.Office.Tools.Word.Bookmark selectedBookmark;
    
    const int WordTrue = -1;
    const int WordFalse = 0;
    
  3. Adicionar a método to Criar the menu.

    Private Sub AddPopUp()
    
        commandBar = Application.CommandBars.Add( _
            "FormatText", Office.MsoBarPosition.msoBarPopup, , True)
    
        ' Add a button and set the style, caption, icon and tag.
        boldText = CType(commandBar.Controls.Add(1), Office.CommandBarButton)
    
        With boldText
            .Style = Office.MsoButtonStyle.msoButtonIconAndCaption
            .Caption = "Bold"
            .FaceId = 113
            .Tag = "0"
        End With
    
        ' Add a button and set the style, caption, icon and tag.
        ItalicText = CType(commandBar.Controls.Add(1), Office.CommandBarButton)
    
        With ItalicText
            .Style = Office.MsoButtonStyle.msoButtonIconAndCaption
            .Caption = "Italic"
            .FaceId = 114
            .Tag = "1"
        End With
    
        CType(Me.AttachedTemplate, Microsoft.Office.Interop.Word.Template).Saved = True
    
    End Sub
    
    private void AddPopUp()
    {
        commandBar = Application.CommandBars.Add("FormatText",
            Office.MsoBarPosition.msoBarPopup, missing, true);
    
        // Add a button and set the style, caption, icon and tag.
        boldText = (Office.CommandBarButton)commandBar.Controls.Add(
            1, missing, missing, missing, missing);
    
        boldText.Style = Office.MsoButtonStyle.msoButtonCaption;
        boldText.Caption = "Bold";
        boldText.FaceId = 113;
        boldText.Tag = "0";
    
        // Add a button and set the style, caption, icon and tag.
        italicText = (Office.CommandBarButton)commandBar.Controls.Add(
            1, missing, missing, missing, missing);
    
        italicText.Style = Office.MsoButtonStyle.msoButtonCaption;
        italicText.Caption = "Italic";
        italicText.FaceId = 114;
        italicText.Tag = "1";
    
        // Handle the click events with the ButtonClick procedure.
        boldText.Click += new Microsoft.Office.Core
            ._CommandBarButtonEvents_ClickEventHandler(ButtonClick);
    
        italicText.Click += new Microsoft.Office.Core
            ._CommandBarButtonEvents_ClickEventHandler(ButtonClick);
    
        ((Microsoft.Office.Interop.Word.Template)this.AttachedTemplate).Saved = true;
    }
    
  4. Chamar AddPopup do evento Startup de ThisDocument.

    Private Sub ThisDocument_Startup(ByVal sender As Object, ByVal e As _
        System.EventArgs) Handles Me.Startup
    
        AddPopUp()
    End Sub
    
    private void ThisDocument_Startup(object sender, System.EventArgs e)
    {
        AddPopUp();
    }
    

Para formatar o texto no indicador

  1. Adicionar um manipulador de eventos ButtonClick para aplicar a formatação ao indicador.

    Private Sub ButtonClick(ByVal ctrl As Office.CommandBarButton, _
        ByRef Cancel As Boolean) Handles boldText.Click, ItalicText.Click
    
        Select Case ctrl.Caption
            Case "Bold"
                selectedBookmark.Bold = Not selectedBookmark.Bold
            Case "Italic"
                selectedBookmark.Italic = Not selectedBookmark.Italic
        End Select
    
        Me.ActiveWindow.SetFocus()
    End Sub
    
    private void ButtonClick(Microsoft.Office.Core.CommandBarButton Ctrl, 
        ref bool CancelDefault)
    {
        if (Ctrl.Caption == "Bold")
        {
            if (selectedBookmark.Bold == WordTrue)
            {
                selectedBookmark.Bold = WordFalse;
            }
            else 
            {
                selectedBookmark.Bold = WordTrue;
            }
        }
        else if (Ctrl.Caption == "Italic")
        {
            if (selectedBookmark.Italic == WordTrue)
            {
                selectedBookmark.Italic = WordFalse;
            }
            else
            {
                selectedBookmark.Italic = WordTrue;
            } 
        }
    }
    
  2. Adicionar um manipulador de eventos showPopupMenu para manipular o evento BeforeRightClick de ambos os indicadores.

    Observação:

    Você deve Gravar código para manipular o maiúscminúsc onde indicadores se sobrepõem.Se você não fizer isso, por padrão, o código será chamado para todos indicador s na seleção.

    Private Sub showPopupMenu(ByVal sender As Object, ByVal e _
        As Microsoft.Office.Tools.Word.ClickEventArgs) _
        Handles Bookmark1.BeforeRightClick, Bookmark2.BeforeRightClick
    
        Dim startPosition As Integer = 0
        Dim i As Integer
    
        ' If bookmarks overlap, get bookmark closest to cursor.
        For i = 1 To e.Selection.Bookmarks.Count
            If e.Selection.Bookmarks(i).Start > startPosition Then
                startPosition = e.Selection.Bookmarks(i).Start
            End If
        Next
    
        ' If closest bookmark is the sender, show the popup.
        If DirectCast(sender, Microsoft.Office.Tools.Word.Bookmark).Start = _
            startPosition Then
            selectedBookmark = DirectCast(sender, Microsoft.Office.Tools.Word.Bookmark)
            commandBar.ShowPopup()
            e.Cancel = True
        End If
    End Sub
    
    private void showPopupMenu(object sender, 
        Microsoft.Office.Tools.Word.ClickEventArgs e)
    {
        int startPosition = 0;
    
        // If bookmarks overlap, get bookmark closest to cursor.
        for (int i = 1; i <= e.Selection.Bookmarks.Count; i++)
        {
            object o = i;
            if (e.Selection.Bookmarks.get_Item(ref o).Start > startPosition)
            {
                startPosition = e.Selection.Bookmarks.get_Item(ref o).Start;
            }
        }
    
        // If closest bookmark is the sender, show the popup.
        if (((Microsoft.Office.Tools.Word.Bookmark)sender).Start == startPosition)
        {
            selectedBookmark = (Microsoft.Office.Tools.Word.Bookmark)sender;
            commandBar.ShowPopup(missing, missing);
            e.Cancel = true;
        }
    
    
    }
    
  3. Em C#, você deve adicionar manipuladores de eventos para os controles de indicador ao evento Startup.Para obter informações sobre como criar manipuladores de eventos, consulte Como: Criar manipuladores de eventos no Visual Studio Tools for Office.

    this.bookmark1.BeforeRightClick += new Microsoft.Office.Tools.Word.
        ClickEventHandler(showPopupMenu);
    
    this.bookmark2.BeforeRightClick += new Microsoft.Office.Tools.Word.
        ClickEventHandler(showPopupMenu);
    

Testando o aplicativo

Teste seu documento para Verifique se os itens de menu negrito e itálico exibido no menu de atalho quando você direita-Clique texto em um indicador e se o texto está formatado corretamente.

Para testar seu documento

  1. Pressionarionar F5 para executar seu projeto.

  2. Clique com o botão direito do mouse no primeiro indicador e clique em negrito de .

  3. Verifique se Tudo o texto em bookmark1 está formatado como negrito.

  4. Clique com o botão direito do mouse onde os indicadores se sobrepõem o texto e clique em Itálico.

  5. Verifique se Tudo o texto em bookmark2 está em itálico e somente a parte do texto no bookmark1 que sobrepõe bookmark2 é em itálico.

Próximas etapas

Aqui estão algumas tarefas que podem vie em seguida:

Consulte também

Conceitos

O Word Usando Explicações Passo a passo

Personalização de IU do Office

Indicador de Controlarar

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

Outros recursos

Controles de host do Word