CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2022 开发者帮助

InsertMenuInMenuBar 方法 (ActiveX)

2024-5-18 18:44| 发布者: admin| 查看: 87| 评论: 0|原作者: admin|来自: AutoCAD

InsertMenuInMenuBar 方法 (ActiveX)

将菜单插入到 AutoCAD 菜单栏中。

支持的平台:仅限 Windows

签名

VBA:

object.InsertMenuInMenuBar MenuName, Index
对象

类型:弹出菜单

此方法应用到的对象。

菜单名称

访问:仅输入

类型:字符串

要插入到菜单栏中的弹出菜单的名称。

指数

访问:仅输入

类型:变体

菜单栏中用于放置弹出菜单的索引。索引必须是整数或字符串。

如果是整数,则索引必须介于 0 和 N-1 之间,其中 N 是菜单栏中的弹出菜单数。

如果是字符串,则弹出菜单的名称必须包含菜单中显示的任何下划线。

返回值 (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)
)

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1   苏公网安备32011402011833)

GMT+8, 2024-12-15 11:52

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部