Document.CustomMenus Property

Visio Automation Reference

Gets a UIObject object that represents the current custom menus and accelerators of an Application object or a Document object. Read-only.

Version Information
 Version Added:  Visio 4.0

Syntax

expression.CustomMenus

expression   A variable that represents a Document object.

Return Value
UIObject

Remarks

If Microsoft Office Visio menus and accelerators have not been customized, either programmatically, by a Visio solution, or in the user interface, the CustomMenus property returns Nothing.

Example

This Microsoft Visual Basic for Applications (VBA) macro shows how to get the currently active user interface (UI) for your document without replacing the application-level custom UI. You must write additional code to add your custom UI items.

Visual Basic for Applications
  
Sub CustomMenus_Example() 
Dim vsoUIObject As Visio.UIObject 

'Check whether there are custom menus bound to the document.
If ThisDocument.CustomMenus Is Nothing Then

    'If not, check whether there are custom menus bound to the application.
    If Visio.Application.CustomMenus Is Nothing Then

        'If not, use the Visio built-in menus.
        Set vsoUIObject = Visio.Application.BuiltInMenus 
        MsgBox "Using Built-In Menus", 0 

    Else

        'If there are existing Visio application-level custom menus, use them.
        Set vsoUIObject = Visio.Application.CustomMenus 
        MsgBox "Using Custom Menus", 0 

    End If 

Else

    'Use the existing custom menus.
    Set vsoUIObject = ThisDocument.CustomMenus
    MsgBox "Using Custom Menus", 0 

End If

End Sub

See Also