Share via


Propiedad UIObject.AccelTables (Visio)

Devuelve la colección AccelTables de un objeto UIObject . Solo lectura.

Sintaxis

expresión. AccelTables

Expresión Variable que representa un objeto UIObject .

Valor devuelto

AccelTables

Comentarios

Nota:

A partir de Visio 2010, la interfaz de usuario (UI) de Microsoft Office Fluent reemplazó al sistema anterior de menús, barras de herramientas y paneles de tareas por capas. Los objetos y miembros de VBA que usó para personalizar la interfaz de usuario en versiones anteriores de Visio siguen estando disponibles en Visio, pero funcionan de forma diferente.

Si un objeto UIObject representa elementos de menú y aceleradores (por ejemplo, si utilizó la propiedad BuiltInMenus de un objeto Application para recuperar el objeto UIObject), su colección AccelTables representa tablas de teclas de aceleración para dicho objeto UIObject.

Use la propiedad ItemAtID de una colección AccelTables para recuperar los aceleradores de un contexto de ventana determiando, como la ventana de dibujo. Si un contexto de ventana no incluye aceleradores, no tiene la colección AccelTables. Los identificadores de contexto de ventana válidos se declaran en VisUIObjSets en la biblioteca de tipos de Visio.

Ejemplo:

La siguiente macro de Microsoft Visual Basic para Aplicaciones (VBA) muestra cómo utilizar la propiedad AccelTables para eliminar una tecla de aceleración de un menú integrado.

Para restaurar los menús integrados de Microsoft Visio después de ejecutar esta macro, llame al método ThisDocument.ClearCustomMenus.

 
Public Sub AccelTables_Example() 
 
 Dim vsoUIObject As Visio.UIObject 
 Dim vsoAccelTable As Visio.AccelTable 
 Dim vsoAccelItems As Visio.AccelItems 
 Dim vsoAccelItem As Visio.AccelItem 
 Dim intCounter As Integer 
 
 'Retrieve the UIObject object for the copy of the built-in menus. 
 Set vsoUIObject = Visio.Application.BuiltInMenus 
 
 'Set vsoAccelTable to the drawing menu set. 
 Set vsoAccelTable = vsoUIObject.AccelTables.ItemAtID(visUIObjSetDrawing) 
 
 'Retrieve the accelerator items collection. 
 Set vsoAccelItems = vsoAccelTable.AccelItems 
 
 'Retrieve the accelerator item for the Visual Basic Editor. 
 'To do this, we must iterate through the collection 
 'and locate the item we want to manipulate. 
 'The item can be identified either by checking 
 'the CmdNum property or by checking for the specific key. 
 'Because checking for the key requires looking at the Alt, 
 'Control, Shift, and Key properties, it is better to use the 
 'CmdNum property. Because we retrieved the built-in menus, 
 'we know that we can find the accelerator. 
 For intCounter = 0 To vsoAccelItems.Count - 1 
 Set vsoAccelItem = vsoAccelItems.Item(intCounter) 
 If vsoAccelItem.CmdNum = Visio.visCmdToolsRunVBE Then 
 Exit For 
 
 End If 
 Next intCounter 
 
 'Delete the accelerator. 
 vsoAccelItem.Delete 
 
 'Tell Visio to use the new UI. 
 ThisDocument.SetCustomMenus vsoUIObject 
 
End Sub

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.