InsertMenuInMenuBar 方法 (ActiveX)
将菜单插入到 AutoCAD 菜单栏中。 支持的平台:仅限 Windows 签名VBA: object.InsertMenuInMenuBar MenuName, Index
返回值 (RetVal)无返回值。 言论菜单紧接在指定的索引位置之前插入。 例子VBA: Sub Example_InsertMenuInMenuBar() ' This example creates a new menu called TestMenu and inserts a menu item ' into it. The menu is then displayed on 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("TestMenu") ' 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 currMenuGroup.Menus.InsertMenuInMenuBar "TestMenu", "" End Sub 可视化 LISP: (vl-load-com) (defun c:Example_InsertMenuInMenuBar() ;; This example creates a new menu called TestMenu and inserts a menu item ;; into it. The menu is then displayed on 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-InsertMenuInMenuBar (vla-get-Menus currMenuGroup) "TestMenu" "") ;; Display the menu bar (vla-SetVariable doc "MENUBAR" 1) ) |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2024-12-15 11:52
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.