从 AutoCAD 菜单栏中删除从集合中指定的弹出菜单。 支持的平台:仅窗口 签名工 务 局: object.RemoveMenuFromMenuBar Index
返回值(RetVal)无返回值。 言论没有额外的评论。 例子工 务 局: 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."))
)
)
|
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-10-29 08:39
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.