UIObject.MenuSets 属性 (Visio)

返回 UIObject 对象的 MenuSets 集合。 此为只读属性。

语法

expressionMenuSets

表达 一个代表 UIObject 对象的变量。

返回值

MenuSets

备注

注意

从 Visio 2010 开始,Microsoft Office Fluent 用户界面 (UI) 替换了以前的分层菜单、工具栏和任务窗格系统。 用于在以前版本的 Visio 中自定义用户界面的 VBA 对象和成员在 Visio 中仍可用,但它们的功能不同。

如果 UIObject 对象代表菜单和加速键(例如,如果使用 ApplicationDocument 对象的 BuiltInMenus 属性检索到该对象),则它的 MenuSets 集合代表该 UIObject 对象的所有菜单。

使用 MenuSets 对象的 ItemAtID 属性检索特定窗口(如绘图窗口)上下文的菜单。 如果上下文不包括菜单,则它没有 MenuSets 集合。

示例

以下 Microsoft Visual Basic for Applications (VBA) 宏显示如何使用 MenuSets 属性获取 MenuSets 对象的 UIObject 集合。 该宏向绘图窗口菜单集添加一个菜单和菜单项,并设置该菜单和菜单项的 Caption 属性。

运行此宏后,要恢复 Microsoft Visio 中的内置菜单,请调用 ThisDocument.ClearCustomMenus 方法。

Public Sub MenuSets_Example() 
 
 Dim vsoUIObject As Visio.UIObject 
 Dim vsoMenuSets As Visio.MenuSets 
 Dim vsoMenuSet As Visio.MenuSet 
 Dim vsoMenus As Visio.Menus 
 Dim vsoMenu As Visio.Menu 
 Dim vsoMenuItems As Visio.MenuItems 
 Dim vsoMenuItem As Visio.MenuItem 
 
 'Get a UIObject object that represents Microsoft Visio built-in menus. 
 Set vsoUIObject = Visio.Application.BuiltInMenus 
 
 'Get the MenuSets collection. 
 Set vsoMenuSets = vsoUIObject.MenuSets 
 
 'Get the drawing window menu set. 
 Set vsoMenuSet = vsoMenuSets.ItemAtId(visUIObjSetDrawing) 
 
 'Get the Menus collection. 
 Set vsoMenus = vsoMenuSet.Menus 
 
 'Add a new menu before the Window menu. 
 Set vsoMenu = vsoMenus.AddAt(7) 
 vsoMenu.Caption = "MyNewMenu" 
 
 'Get the MenuItems collection. 
 Set vsoMenuItems = vsoMenu.MenuItems 
 
 'Add a menu item to the new menu. 
 Set vsoMenuItem = vsoMenuItems.Add 
 
 'Set the Caption property for the new menu item. 
 vsoMenuItem.Caption = "&MyNewMenuItem" 
 
 'Tell Visio to use the new UI when the document is active. 
 ThisDocument.SetCustomMenus vsoUIObject 
 
End Sub

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。