Méthode Application.SetCustomMenus (Visio)

Remplace les menus actifs, personnalisés ou intégrés, d’une application ou d’un document.

Remarque

À compter de Visio 2010, l’interface utilisateur Microsoft Office Fluent a remplacé le système précédent de menus en couches, de barres d’outils et de volets Office. Les objets et membres VBA que vous avez utilisés pour personnaliser l’interface utilisateur dans les versions précédentes de Visio sont toujours disponibles dans Visio, mais ils fonctionnent différemment.

Syntaxe

expression. SetCustomMenus (MenusObject)

expressionUne variable qui représente un objetApplication.

Paramètres

Nom Requis/Facultatif Type de données Description
MenusObject Requis [IVUIOBJECT] Expression renvoyant un objet UIObject représentant les nouveaux menus personnalisés.

Valeur renvoyée

Aucune

Remarques

Si l’objet UIObject a été créé lors d’un processus différent en utilisant la procédure CreateObject au lieu de récupérer la propriété appropriée d’un objet Application ou Document, la méthode SetCustomMenus renvoie une erreur.

Exemple

Cette macro Microsoft Visual Basic pour Applications (VBA) indique comment ajouter un menu et un élément de menu à l’interface utilisateur et remplacer ensuite le menu intégré par l’ensemble personnalisé.

Pour restaurer l’interface utilisateur intégrée de Microsoft Visio après avoir exécuté cette macro, appelez la méthode ThisDocument.ClearCustomMenus.

 
Public Sub SetCustomMenus_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 UI object that represents the 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 Demo menu. 
 Set vsoMenu = vsoMenus.AddAt(1) 
 vsoMenu.Caption = "Demo" 
 
 'Get the MenuItems collection. 
 Set vsoMenuItems = vsoMenu.MenuItems 
 
 'Add a menu item to the new Demo menu. 
 Set vsoMenuItem = vsoMenuItems.Add 
 
 'Set the properties for the new menu item. 
 vsoMenuItem.Caption = "&Hello" 
 vsoMenuItem.AddOnName = "MsgBox ""Hello""" 
 
 'Tell Visio to use the new UI when the document is active. 
 ThisDocument.SetCustomMenus vsoUIObject 
 
End Sub

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.