为菜单项指定加速键

AutoCAD ActiveX/VBA

 
为菜单项指定加速键
 
 
 

要通过 AutoCAD ActiveX/VBA 为菜单项指定加速键,请使用给定菜单项的 Label 特性。要指定加速键,请在标签中要成为加速键的字符前直接插入 & 的 ASCII 等价值。例如,标签 Chr(Asc("&")) + "Edit" 将显示为“Edit”,并使用字符“E”作为加速键。

向菜单添加加速键

本例重复了向弹出式菜单添加菜单项中的样例,为“TestMenu”菜单和“Open”菜单添加加速键。使用“S”作为“TestMenu”菜单的加速键,使用“O”作为“Open”菜单的加速键。

Sub Ch6_AddAMenuItem()
    Dim currMenuGroup As AcadMenuGroup
    Set currMenuGroup = ThisDrawing.Application.MenuGroups.Item(0)
      
    ' 创建新菜单
    Dim newMenu As AcadPopupMenu
    Set newMenu = currMenuGroup.Menus.Add _
                              ("Te" + Chr(Asc("&")) + "stMenu")
      
    ' 向新菜单添加菜单项
    Dim newMenuItem As AcadPopupMenuItem
    Dim openMacro As String
    ' 给宏指定“ESC ESC _open”的 VBA 等价值
    openMacro = Chr(3) + Chr(3) + "_open "
      
    Set newMenuItem = newMenu.AddMenuItem _
                       (newMenu.count + 1, Chr(Asc("&")) _
                        + "Open", openMacro)
      
    ' 在菜单栏上显示菜单
    newMenu.InsertInMenuBar _
                 (ThisDrawing.Application.menuBar.count + 1)
End Sub