Enable 属性 (ActiveX)
启用弹出菜单项。指定对象的名称。 支持的平台:仅限 Windows 属性值只读:不 类型:布尔
言论在以下示例中,“撤消”和“重做”菜单项处于禁用状态。 ![]() 例子VBA: Sub Example_Enable()
' This example creates a new menu called TestMenu and inserts two menu items
' into it. The second menu item is then disabled.
' The menu is displayed on the menu bar.
' To remove the menu after execution of this macro, use the Customize Menu
' option from the Tools menu.
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 two menu items to the new menu
Dim MenuEnable As AcadPopupMenuItem
Dim MenuDisable As AcadPopupMenuItem
Dim MenuSeparator 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 MenuEnable = newMenu.AddMenuItem(newMenu.count + 1, "OpenEnabled", openMacro)
Set MenuSeparator = newMenu.AddSeparator("")
Set MenuDisable = newMenu.AddMenuItem(newMenu.count + 1, "OpenDisabled", openMacro)
' Disable the new menu item
MenuDisable.Enable = False
' Display the menu on the menu bar
newMenu.InsertInMenuBar (ThisDrawing.Application.MenuBar.count + 1)
End Sub
可视化 LISP: (vl-load-com)
(defun c:Example_Enable()
;; This example creates a new menu called TestMenu and inserts two menu items
;; into it. The second menu item is then disabled.
;; The menu is displayed on the menu bar.
;; To remove the menu after execution of this macro, use the Customize Menu
;; option from the Tools menu.
(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 two menu items 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 MenuEnable (vla-AddMenuItem newMenu (1+ (vla-get-Count newMenu)) "OpenEnabled" openMacro))
(setq MenuSeparator (vla-AddSeparator newMenu ""))
(setq MenuDisable (vla-AddMenuItem newMenu (1+ (vla-get-Count newMenu)) "OpenDisabled" openMacro))
;; Disable the new menu item
(vla-put-Enable MenuDisable :vlax-false)
;; Display the menu on the menu bar
(vla-InsertInMenuBar newMenu (1+ (vla-get-Count (vla-get-MenuBar acadObj))))
)
|
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-10-29 10:00
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.