Clase KeyBinding (Word VBA)

La clase KeyBinding representa una asignación de teclas personalizada en el contexto actual.

El principal procedimiento de la clase KeyBinding es KeyBindings.Add

Set

Para usar una variable de clase KeyBinding, primero debe ser instanciado, por ejemplo

Dim kbg as KeyBinding
Set kbg = Dim lngKeyCode As Long: lngKeyCode = 
FindKey(KeyCode:=lngKeyCode)

Los siguientes procedimientos se pueden usar para establecer variables de clase KeyBinding : Application.FindKey, KeyBindings.Add, KeyBindings.Item, KeyBindings.Key, KeysBoundTo.Item, KeysBoundTo.Key, Application.KeyBindings y Application.KeysBoundTo

For Each

A continuación, se muestra un ejemplo de cómo procesar los elementos KeyBinding en una colección.

Dim lngCode As Long 
Dim kbg As KeyBinding 
CustomizationContext = NormalTemplate 
lngCode = BuildKeyCode(wdKeyAlt, wdKeyControl, wdKeyW) 
For Each kbg In KeyBindings 
 If lngCode = kbg.KeyCode Then MsgBox kbg.KeyString & " is already in use" 
Next kbg

Métodos

Este es el método principal de la clase KeyBinding

KeyBindings.Add - Devuelve un objeto KeyBinding que representa una nueva tecla de método abreviado para una macro, un comando integrado, una fuente, un elemento de Autotexto, un estilo o un símbolo.

Dim strCommand As String: strCommand = 
Dim lngKeyCode As Long: lngKeyCode =  
Dim kbg As KeyBinding
Set kbg = KeyBindings.Add(KeyCategory:=wdKeyCategoryAutoText, Command:=strCommand, KeyCode:=lngKeyCode)

Otros Métodos

Rebind - Cambia el comando asignado a la combinación de teclas especificada.

Dim strCommand As String: strCommand =  
FindKey.Rebind KeyCategory:=wdKeyCategoryAutoText, Command:=strCommand

KeyBindings.Key - Devuelve un objeto KeyBinding que representa la combinación de teclas personalizada especificada.

Dim lngKeyCode As Long: lngKeyCode =  
Dim kbgKey As KeyBinding
Set kbgKey = KeyBindings.Key(KeyCode:=lngKeyCode)

KeysBoundTo.Key - Devuelve un objeto KeyBinding que representa la combinación de teclas personalizada especificada.

Dim lngKeyCode As Long: lngKeyCode =  
Dim kbgKey As KeyBinding
Set kbgKey = KeysBoundTo.Key(KeyCode:=lngKeyCode)

Propiedades

Command Devuelve el comando asignado a la combinación de teclas especificada.

Dim strCommand As String
strCommand = FindKey.Command

CommandParameter Devuelve el parámetro de comando asignado a la tecla de método abreviado especificada.

Dim strCommandParameter As String
strCommandParameter = FindKey.CommandParameter

Context Devuelve un objeto Object que representa la ubicación de almacenamiento de la combinación de teclas especificada.

Dim docContext As Document
Set docContext = FindKey.Context

KeyCategory Devuelve el tipo de elemento asignado a la combinación de teclas especificada.

Dim wkcKeyCategory As WdKeyCategory
wkcKeyCategory = FindKey.KeyCategory

KeyCode Devuelve un número único para la primera clave en la combinación de teclas especificada.

Dim lngKeyCode As Long
lngKeyCode = FindKey.KeyCode

KeyCode2 Devuelve un número único para la segunda clave en la combinación de teclas especificada.

Dim lngKeyCode2 As Long
lngKeyCode2 = FindKey.KeyCode2

KeyString Devuelve la cadena de la combinación de teclas de las claves especificadas (por ejemplo, CTRL + MAYÚS + A).

Dim strKeyString As String
strKeyString = FindKey.KeyString

Parent Devuelve un objeto Object que representa el objeto primario del objeto KeyBinding especificado.

Dim objParent As Object
Set objParent = FindKey.Parent

Protected True si no se puede cambiar la combinación de teclas especificada en el cuadro de diálogo Personalizar teclado.

Dim booProtected As Boolean
booProtected = FindKey.Protected

KeyBindings.Context Devuelve un objeto Object que representa la ubicación de almacenamiento de la combinación de teclas especificada.

Dim appContext As Application
Set appContext = KeyBindings.Context

KeyBindings.Count Devuelve un Long que representa el número de combinaciones de teclas de la colección.

Dim lngCount As Long
lngCount = KeyBindings.Count

KeyBindings.Parent Devuelve un objeto Object que representa el objeto primario del objeto KeyBindings especificado.

Dim objParent As Object
Set objParent = KeyBindings.Parent

KeysBoundTo.Command Devuelve una cadena que representa el comando asignado a la combinación de teclas especificada.

Dim strCommand As String
strCommand = KeysBoundTo.Command

KeysBoundTo.CommandParameter Devuelve el parámetro de comando asignado a la tecla de método abreviado especificada.

Dim strCommandParameter As String
strCommandParameter = KeysBoundTo.CommandParameter

KeysBoundTo.Context Devuelve un objeto Object que representa la ubicación de almacenamiento de la combinación de teclas especificada.

Dim docContext As Document
Set docContext = KeysBoundTo.Context

KeysBoundTo.Count Devuelve un Long que representa el número de claves de la colección.

Dim lngCount As Long
lngCount = KeysBoundTo.Count

KeysBoundTo.KeyCategory Devuelve el tipo de elemento asignado a la combinación de teclas especificada.

Dim wkcKeyCategory As WdKeyCategory
wkcKeyCategory = KeysBoundTo.KeyCategory

KeysBoundTo.Parent Devuelve un objeto Object que representa el objeto primario del objeto KeysBoundTo especificado.

Dim objParent As Object
Set objParent = KeysBoundTo.Parent