Check 属性 (ActiveX) 
指定弹出菜单项的检查状态。 支持的平台:仅限 Windows 属性值只读:不 类型:布尔 
 言论在以下示例中,选中了 1 Drawing1.dwg菜单项。 ![]() 例子VBA: Sub Example_Check()
    ' This example creates a new menu called TestMenu and inserts two menu items
    ' into it. The second menu item is then checked.
    ' 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 Menu1 As AcadPopupMenuItem
    Dim Menu2 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 Menu1 = newMenu.AddMenuItem(newMenu.count + 1, "Open1", openMacro)
    Set MenuSeparator = newMenu.AddSeparator("")
    Set Menu2 = newMenu.AddMenuItem(newMenu.count + 1, "Open2", openMacro)
    
    ' Disable the new menu item
    Menu2.Check = True
    
    ' Display the menu on the menu bar
    newMenu.InsertInMenuBar (ThisDrawing.Application.MenuBar.count + 1)
    
End Subt
 
  可视化 LISP: (vl-load-com)
(defun c:Example_Check()
    ;; This example creates a new menu called TestMenu and inserts two menu items
    ;; into it. The second menu item is then checked.
    ;; 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 Menu1 (vla-AddMenuItem newMenu (1+ (vla-get-Count newMenu)) "Open1" openMacro))
    (setq MenuSeparator (vla-AddSeparator newMenu ""))
    (setq Menu2 (vla-AddMenuItem newMenu (1+ (vla-get-Count newMenu)) "Open2" openMacro))
    
    ;; Disable the new menu item
    (vla-put-Check Menu2 :vlax-true)
    
    ;; 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-11-4 23:39
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.