Programación de eventos de documento en VBA

AutoCAD ActiveX

 
Programación de eventos de documento en VBA
 
 
 

Los eventos de documento no se activan de forma automática al cargar un proyecto VBA. Para escribir controladores para eventos de documento en VBA, seleccione AcadDocument en la lista desplegable de objetos de la ventana de código. Los eventos disponibles para el documento aparecen en la lista desplegable de procedimientos. Seleccione el evento para el que desea escribir un controlador y la estructura básica del mismo se creará automáticamente.

Tenga presente que los controladores de eventos creados de esta forma se aplican al dibujo que se encuentre activo. Para crear controladores de eventos para un dibujo específico, primero siga los pasos explicados en Activación de eventos de documento en otros entornos (no VBA). Podrá activar documentos concretos para los eventos.

En el siguiente ejemplo se utiliza el controlador de evento BeginShortcutMenuDefault para añadir la opción de menú “OpenDWG” al principio del menú contextual. Después, el controlador de evento EndShortcutMenu elimina la opción de menú adicional para que no se guarde permanentemente en la configuración de menús del usuario.

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