Comandos, menus e barras de ferramentas

Menus e barras de ferramentas são a maneira como os usuários acessam comandos em seu VSPackage. Os comandos são funções que realizam tarefas, como imprimir um documento, atualizar uma 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 clusterados juntos no mesmo menu ou barra de ferramentas.

  • Os menus normalmente são exibidos como cadeias de caracteres de uma palavra clusterizado em uma linha na parte superior do IDE (ambiente de desenvolvimento integrado) ou uma janela de ferramentas. 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 clicados, os menus são expandidos para exibir um ou mais comandos. Os comandos, quando clicados, podem executar tarefas ou iniciar submenus que contêm comandos adicionais. Alguns nomes de menu conhecidos são Arquivo, Editar, Exibir 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 estã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 Print. Em um controle de listada, 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 lado é 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 que você modifique seu texto e garante que o comando responda adequadamente ("rotas") quando ativado. Na maioria das instâncias, o IDE lida com comandos usando a IOleCommandTarget interface . Comandos na rota 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 Visual Studio seleção global. Os comandos adicionados ao menu principal estão imediatamente disponíveis para scripts. Para obter mais informações, consulte MenuCommands vs. Objetos de contexto OleMenuCommands e Seleção.

    Para definir novos menus e barras de ferramentas, você deve descrevê-los em um arquivo Visual Studio de comando (.vsct). O Visual Studio de pacote cria esse arquivo para você, juntamente com os elementos necessários para dar suporte a quaisquer 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 do VSCT.

    Para obter mais informações sobre como trabalhar com arquivos .vsct, consulte Visual Studio arquivos de tabela de comando (.vsct).

    Os tópicos nesta seção explicam como comandos, menus e barras de ferramentas funcionam no VSPackages.

Nesta seção

Uma descrição detalhada da especificação de formato de tabela de comando.

Descreve uma sintaxe baseada em XML e um compilador para tabelas de comando.

Descreve comandos, grupos, menus e barras de ferramentas predefinidos.

Especifica os menus predefinidos, comandos e grupos de comandos disponíveis para uso pelo Visual Studio IDE.

Explica como projetar comandos.

Fornece diretrizes para comandos.

Explica como disponibilizar comandos para Visual Studio.

Explica como implementar comandos que usam assemblies de interop.

Explica o roteamento de comandos em VSPackages.