Associar atalhos de teclado aos itens de menuBind keyboard shortcuts to menu items

Para associar um atalho de teclado a um comando de menu personalizado, basta adicionar uma entrada para o VSCT arquivo para o pacote.To bind a keyboard shortcut to a custom menu command, just add an entry to the .vsct file for the package. Este tópico explica como mapear um atalho de teclado para um botão personalizado, o item de menu ou o comando da barra de ferramentas e como aplicar o mapeamento de teclado no editor padrão ou limite-o a um editor personalizado.This topic explains how to map a keyboard shortcut to a custom button, menu item, or toolbar command, and how to apply the keyboard mapping in the default editor or limit it to a custom editor.

Para atribuir atalhos de teclado para os itens de menu existentes do Visual Studio, consulte identificar e personalizar atalhos de teclado.To assign keyboard shortcuts to existing Visual Studio menu items, see Identify and customize keyboard shortcuts.

Escolha uma combinação de teclasChoose a key combination

Muitos atalhos de teclado já são usados no Visual Studio.Many keyboard shortcuts are already used in Visual Studio. Você não deve atribuir o mesmo atalho para mais de um comando como ligações duplicadas são difíceis de detectar e também podem causar resultados imprevisíveis.You should not assign the same shortcut to more than one command because duplicate bindings are hard to detect and may also cause unpredictable results. Portanto, é uma boa ideia verificar a disponibilidade de um atalho antes de atribuí-lo.Therefore, it is a good idea to verify the availability of a shortcut before you assign it.

Para verificar a disponibilidade de um atalho de tecladoTo verify the availability of a keyboard shortcut

  1. No ferramentas > opções > ambiente janela, selecione teclado.In the Tools > Options > Environment window, select Keyboard.

  2. Certifique-se de que usar novo atalho em é definido como Global.Make sure that Use new shortcut in is set to Global.

  3. No pressionar teclas de atalho , digite o atalho de teclado que você deseja usar.In the Press shortcut keys box, type the keyboard shortcut that you want to use.

    Se o atalho já é usado no Visual Studio, o atalho usado atualmente por caixa mostrará o comando que o atalho chama no momento.If the shortcut is already used in Visual Studio, the Shortcut currently used by box will show the command that the shortcut currently calls.

  4. Tente diferentes combinações de teclas até encontrar uma que não está mapeado.Try different combinations of keys until you find one that is not mapped.

    Note

    Atalhos de teclado que usam Alt pode abrir um menu e não diretamente, executar um comando.Keyboard shortcuts that use Alt may open a menu and not directly execute a command. Portanto, o atalho usado atualmente por caixa pode estar em branco quando você digita um atalho que inclui Alt. Você pode verificar o atalho não abre um menu ao fechar o opções caixa de diálogo e, em seguida, pressionando as teclas.Therefore, the Shorcut currently used by box may be blank when you type a shortcut that includes Alt. You can verify that the shortcut does not open a menu by closing the Options dialog box and then pressing the keys.

    O procedimento a seguir pressupõe que você tenha um VSPackage existente com um comando de menu.The following procedure assumes that you have an existing VSPackage with a menu command. Se você precisar de ajuda para fazer isso, dê uma olhada criar uma extensão com um comando de menu.If you need help doing that, take a look at Create an extension with a menu command.

Para atribuir um atalho de teclado a um comandoTo assign a keyboard shortcut to a command

  1. Abra o VSCT arquivo do pacote.Open the .vsct file for your package.

  2. Criar vazio <KeyBindings> seção após o <Commands> se ele não ainda estiver presente.Create an empty <KeyBindings> section after the <Commands> if it is not already present.

    Warning

    Para obter mais informações sobre associações de teclas, consulte Keybinding.For more information about key bindings, see Keybinding.

    No <KeyBindings> seção, crie um <KeyBinding> entrada.In the <KeyBindings> section, create a <KeyBinding> entry.

    Defina as guid e id atributos para os do comando que você deseja invocar.Set the guid and id attributes to those of the command you want to invoke.

    Defina as mod1 de atributo para controle, Alt, ou Shift.Set the mod1 attribute to Control, Alt, or Shift.

    A seção de associações de teclas deve ter esta aparência:The KeyBindings section should look something like this:

    <KeyBindings>  
        <KeyBinding guid="<name of command set>" id="<name of command id>"  
            editor="guidVSStd97" key1="1" mod1="CONTROL"/>  
    </KeyBindings>  
    

    Se o atalho de teclado exigir mais de duas chaves, defina as mod2 e key2 atributos.If your keyboard shortcut requires more than two keys, set the mod2 and key2 attributes.

    Na maioria das situações, Shift não deve ser usado sem um modificador segundo porque pressioná-lo já faz com que a maioria das teclas alfanuméricos digitar uma letra maiuscula ou um símbolo.In most situations, Shift should not be used without a second modifier because pressing it already causes most alphanumeric keys to type an uppercase letter or a symbol.

    Códigos de tecla virtual permite que você acesse chaves especiais que não têm um caractere associado a eles, por exemplo, as teclas de função e o Backspace chave.Virtual-key codes let you access special keys that do not have a character associated with them, for example, function keys and the Backspace key. Para obter mais informações, consulte códigos de tecla Virtual.For more information, see Virtual-key codes.

    Para tornar o comando disponível no Visual Studio editor, defina as editor atributo guidVSStd97.To make the command available in the Visual Studio editor, set the editor attribute to guidVSStd97.

    Para tornar o comando disponível somente em um editor personalizado, defina as editor de atributo para o nome do editor personalizado que foi gerado pelo Visual StudioVisual Studio modelo de pacote quando você criou o VSPackage que inclui o editor personalizado.To make the command available only in a custom editor, set the editor attribute to the name of the custom editor that was generated by the Visual StudioVisual Studio Package Template when you created the VSPackage that includes the custom editor. Para localizar o valor do nome, procure na <Symbols> seção para uma <GuidSymbol> nó cujo name atributo termina em "editorfactory." Esse é o nome do editor personalizado.To find the name value, look in the <Symbols> section for a <GuidSymbol> node whose name attribute ends in "editorfactory." This is the name of the custom editor.

ExemploExample

Este exemplo associa o atalho de teclado Ctrl+Alt+C para um comando chamado cmdidMyCommand em um pacote chamado MyPackage.This example binds the keyboard shortcut Ctrl+Alt+C to a command named cmdidMyCommand in a package named MyPackage.

<CommandTable>  
. . .  
<Commands>  
. . .  
</Commands>  
<KeyBindings>  
  <KeyBinding guid="guidMyPackageCmdSet" id="cmdidMyCommand"   
      key1="C" mod1="CONTROL" mod2="ALT" editor="guidVSStd97" />  
</KeyBindings>  
. . .  
</CommandTable>  

ExemploExample

Este exemplo associa o atalho de teclado Ctrl+B para um comando chamado cmdidBold em um projeto chamado TestEditor.This example binds the keyboard shortcut Ctrl+B to a command named cmdidBold in a project named TestEditor. O comando está disponível apenas no editor personalizado e não em outros editores.The command is available only in the custom editor and not in other editors.

<KeyBinding guid="guidVSStd97" id="cmdidBold" editor="guidTestEditorEditorFactory" key1="B" mod1="Control" />  

Consulte tambémSee also

Ampliar menus e comandosExtending menus and commands