コレクションから指定されたとき、ポップアップ メニューを AutoCAD メニュー バーから削除します。
サポートされているプラットフォーム: Windows のみ
VBA:
object.RemoveMenuFromMenuBar Index
タイプ: PopupMenus
このメソッドが適用されるオブジェクト。
アクセス: 入力のみ
タイプ: バリアント型
削除するポップアップ メニューのメニュー バーのインデックス。インデックスは整数または文字列でなければなりません。整数の場合、Index は 0 から N-1 までとし、この場合 N はメニューバー内のポップアップ メニューの数です。 文字列の場合、ポップアップ メニューの名前はメニューに表示されるアンダースコアを含んでいなければなりません。
戻り値はありません。
追加の注意はありません。
VBA:
Sub Example_RemoveMenuFromMenuBar() ' This example creates a new menu called TestMenu and inserts a menu item ' into it. The menu is displayed on the menu bar, and then ' removed from the menu bar. Dim currMenuGroup As AcadMenuGroup Set currMenuGroup = ThisDrawing.Application.MenuGroups.Item(0) ' Create the new menu Dim newMenu As AcadPopupMenu Set newMenu = currMenuGroup.Menus.Add("TestMenu3") ' Add a menu item to the new menu Dim newMenuItem As AcadPopupMenuItem Dim openMacro As String ' Assign the macro string the VB equivalent of "ESC ESC _open " openMacro = Chr(3) & Chr(3) & Chr(95) & "open" & Chr(32) Set newMenuItem = newMenu.AddMenuItem(newMenu.Count + 1, "Open", openMacro) ' Display the menu on the menu bar newMenu.InsertInMenuBar ThisDrawing.Application.MenuBar.Count + 1 GoSub QUERYMENU ' Remove the menu from the menu bar currMenuGroup.Menus.RemoveMenuFromMenuBar "TestMenu3" GoSub QUERYMENU Exit Sub QUERYMENU: If newMenu.OnMenuBar Then MsgBox "The menu called " & newMenu.Name & " is on the menu bar." Else MsgBox "The menu called " & newMenu.Name & " is not on the menu bar." End If Return End Sub
Visual LISP:
(vl-load-com) (defun c:Example_RemoveMenuFromMenuBar() ;; This example creates a new menu called TestMenu and inserts a menu item ;; into it. The menu is displayed on the menu bar, and then ;; removed from the menu bar. (setq acadObj (vlax-get-acad-object)) (setq currMenuGroup (vla-Item (vla-get-MenuGroups acadObj) 0)) ;; Create the new menu (setq newMenu (vla-Add (vla-get-Menus currMenuGroup) "TestMenu")) ;; Add a menu item to the new menu ;; Assign the macro string the VB equivalent of "ESC ESC _open " (setq openMacro (strcat (Chr 3) (Chr 3) (Chr 95) "open" (Chr 32))) (setq newMenuItem (vla-AddMenuItem newMenu (1+ (vla-get-Count newMenu)) "Open" openMacro)) ;; Display the menu on the menu bar (vla-InsertInMenuBar newMenu (1+ (vla-get-Count (vla-get-MenuBar acadObj)))) (if (= (vla-get-OnMenuBar newMenu) :vlax-true) (alert (strcat "The menu called " (vla-get-Name newMenu) " is on the menu bar.")) (alert (strcat "The menu called " (vla-get-Name newMenu) " is not on the menu bar.")) ) ;; Remove the menu from the menu bar (vla-RemoveMenuFromMenuBar (vla-get-Menus currMenuGroup) "TestMenu") (if (= (vla-get-OnMenuBar newMenu) :vlax-true) (alert (strcat "The menu called " (vla-get-Name newMenu) " is on the menu bar.")) (alert (strcat "The menu called " (vla-get-Name newMenu) " is not on the menu bar.")) ) )