Тема: Как добавить в контектное меню AutoCAD свою команду?

доброе время суток !
люди мне очень хочется вписать свою команду как пункт в контестное меню то есть popup Autocada
как это сделать?
заранее благодарен
влад

Re: Как добавить в контектное меню AutoCAD свою команду?

А это надо сделать именно VBA-макросом?
Или можно ручками раз и навсегда прописать в файл меню? Если можно - то в acad.mns (или acad.mnu) в группах начиная с ***POP500 допишите в нужную, сообразно режима, когда должна появляться команда (скорей всего это будет 501 или 502).

Re: Как добавить в контектное меню AutoCAD свою команду?

> Vlad
Из Help'а:
Вариант 1:

Private Sub AcadDocument_BeginShortcutMenuDefault _
                    (ShortcutMenu As AutoCAD.IAcadPopupMenu)
    On Error Resume Next
    ' Add a menu item to the cursor menu
    Dim newMenuItem As AcadPopupMenuItem
    Dim openMacro As String
    openMacro = Chr(vbKeyEscape) + Chr(vbKeyEscape) + "_open "
    Set newMenuItem = ShortcutMenu.AddMenuItem _
                                    (0, Chr(Asc("&")) _
                                     + "OpenDWG", openMacro)
End Sub
Private Sub AcadDocument_EndShortcutMenu _
                   (ShortcutMenu As AutoCAD.IAcadPopupMenu)
    On Error Resume Next
    ShortcutMenu.Item("OpenDWG").Delete
End Sub

Вариант 2:

Sub Ch6_AddMenuItemToshortcutMenu()
    Dim currMenuGroup As AcadMenuGroup
    Set currMenuGroup = ThisDrawing.Application.MenuGroups.Item(0)
    ' Find the shortcut menu and assign it to the
    ' shortcutMenu variable
    Dim scMenu As AcadPopupMenu
    Dim entry As AcadPopupMenu
    For Each entry In currMenuGroup.Menus
        If entry.shortcutMenu = True Then
            Set scMenu = entry
        End If
    Next entry
    ' Add a menu item to the shortcut menu
    Dim newMenuItem As AcadPopupMenuItem
    Dim openMacro As String
    ' Assign the macro the VBA equivalent of "ESC ESC _open "
    openMacro = Chr(3) + Chr(3) + Chr(95) + "open" + Chr(32)
    Set newMenuItem = scMenu.AddMenuItem _
                                    ("", Chr(Asc("&")) _
                                     + "OpenDWG", openMacro)
End Sub

Re: Как добавить в контектное меню AutoCAD свою команду?

спасибо коллеги