Application.SetCustomMenus メソッド (Visio)

アプリケーションまたは図面の現在の組み込みメニューまたはユーザー設定メニューを置き換えます。

注:

Visio 2010 以降、Microsoft Office Fluent ユーザー インターフェイス (UI) は、以前の階層化されたメニュー、ツール バー、作業ウィンドウのシステムを置き換えました。 以前のバージョンの Visio でユーザー インターフェイスをカスタマイズするために使用した VBA オブジェクトとメンバーは、Visio では引き続き使用できますが、機能は異なります。

構文

SetCustomMenus (MenusObject)

expressionApplication オブジェクトを 表す変数。

パラメーター

名前 必須 / オプション データ型 説明
MenusObject 必須 [IVUIOBJECT] 新しいユーザー設定メニューを示す UIObject オブジェクトを返す式です。

戻り値

なし

解説

Application オブジェクトまたは Document オブジェクトの適切なプロパティを取得する代わりに、CreateObject プロシージャを使用して UIObject オブジェクトを個別のプロセスで作成した場合、SetCustomMenus メソッドはエラーを返します。

次の VBA (Microsoft Visual Basic for Applications) マクロは、ユーザー インターフェイスにメニューとメニュー項目を追加し、次に組み込みのメニュー セットをユーザー設定のメニュー セットで置き換える方法を示します。

このマクロを実行した後、Microsoft Office Visio 組み込みのユーザー インターフェイスに戻すには、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

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。