Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Menus e barras de ferramentas são a maneira como os usuários acessam comandos em seu VSPackage. Comandos são funções que realizam tarefas, como imprimir um documento, atualizar um modo de exibição ou criar um novo arquivo. Menus e barras de ferramentas são maneiras gráficas convenientes de apresentar seus comandos aos usuários. Normalmente, os comandos relacionados são agrupados no mesmo menu ou barra de ferramentas.
Normalmente, os menus são exibidos como cadeias de caracteres de uma palavra agrupadas em uma linha na parte superior do IDE (ambiente de desenvolvimento integrado) ou uma janela de ferramenta. Os menus também podem ser exibidos como resultado de um evento de clique com o botão direito do mouse e são chamados de menus de atalho nesse contexto. Quando clicado, os menus se expandem para exibir um ou mais comandos. Os comandos, quando clicados, podem realizar tarefas ou iniciar submenus que contêm comandos adicionais. Alguns nomes de menu conhecidos são Arquivo, Edição, Exibição e Janela. Para obter mais informações, consulte Estender menus e comandos.
As barras de ferramentas normalmente são linhas de botões e outros controles, como caixas de combinação, caixas de listagem, caixas de texto e controladores de menu. Todos os controles da barra de ferramentas são associados a comandos. Quando você clica em um botão de barra de ferramentas, seu comando associado é ativado. Os botões da barra de ferramentas geralmente têm ícones que sugerem os comandos subjacentes, como uma impressora para um comando Imprimir. Em um controle de lista suspensa, cada item na lista é associado a um comando diferente. Um controlador de menu é um híbrido no qual um lado do controle é um botão de barra de ferramentas e o outro é uma seta para baixo que exibe comandos adicionais quando clicado. Para obter mais informações, consulte Adicionar um controlador de menu a uma barra de ferramentas.
Ao criar um comando, você também deve criar um manipulador de eventos para ele. O manipulador de eventos determina quando o comando está visível ou habilitado, permite modificar seu texto e garante que o comando responda adequadamente ("rotas") quando ativado. Na maioria dos casos, o IDE manipula comandos usando a IOleCommandTarget interface. Os comandos no Visual Studio roteiam de maneira hierárquica, começando com o contexto de comando mais interno, com base na seleção local e continuando para o contexto mais externo, com base na seleção global. Os comandos adicionados ao menu principal estão imediatamente disponíveis para script. Para obter mais informações, consulte MenuCommands vs. OleMenuCommands e Objetos de contexto de seleção.
Para definir novos menus e barras de ferramentas, você deve descrevê-los em um arquivo de tabela de comandos do Visual Studio (.vsct). O modelo de pacote do Visual Studio cria esse arquivo para você, juntamente com os elementos necessários para dar suporte a comandos, barras de ferramentas e editores selecionados no modelo. Como alternativa, você pode escrever seu próprio arquivo .vsct usando o esquema XML descrito aqui: referência de esquema XML VSCT.
Para obter mais informações sobre como trabalhar com arquivos .vsct , consulte arquivos da tabela de comandos do Visual Studio (.vsct).
Os tópicos nesta seção explicam como os comandos, menus e barras de ferramentas funcionam em VSPackages.
Nesta seção
Uma descrição detalhada da especificação de formato da tabela de comandos.
Descreve uma sintaxe baseada em XML e um compilador para tabelas de comandos.
Descreve comandos predefinidos, grupos, menus e barras de ferramentas.
Especifica os menus predefinidos, comandos e grupos de comandos disponíveis para uso pelo IDE do Visual Studio.
Explica como criar comandos.
Fornece diretrizes para comandos.
Explica como disponibilizar comandos para o Visual Studio.
Explica como implementar comandos que usam assemblies de interoperabilidade.
Seções relacionadas
Explica o roteamento de comandos em VSPackages.