次の方法で共有


UIObject.MenuSets プロパティ (Visio)

UIObject オブジェクトの MenuSets コレクションを返します。 読み取り専用です。

構文

MenuSets

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

戻り値

MenuSets

注釈

注:

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

UIObject オブジェクトがメニューおよびアクセラレータを表している場合 (たとえば、Application または Document オブジェクトの BuiltInMenus プロパティを使用してオブジェクトを取得した場合)、MenuSets コレクションは、その UIObject オブジェクトのメニューすべてを表します。

図面ウィンドウなど、特定のウィンドウ コンテキストのメニューを取得するには、MenuSets オブジェクトの ItemAtID プロパティを使用します。 コンテキストにメニューが含まれていない場合は、MenuSets コレクションはありません。

この VBA (Microsoft Visual Basic for Applications) マクロは、MenuSets プロパティを使用して、UIObject オブジェクトの MenuSets コレクションを取得する方法を示します。 図面ウィンドウのメニュー セットにメニューとメニュー項目を追加し、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 のサポートおよびフィードバックを参照してください。