Document.SetCustomMenus メソッド (Visio)

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

構文

式。SetCustomMenus (MenusObject)

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

パラメーター

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

戻り値

なし

解説

注:

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

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 のサポートおよびフィードバックを参照してください。