Annotation Property (ActiveX)

Specifies the annotation object for a leader.

Supported platforms: Windows only

Signature

VBA:

object.Annotation
object

Type: Leader

The object this property applies to.

Property Value

Read-only: No

Type: BlockReference, MText, Tolerance

The annotation object for the leader. Leader annotations can be a tolerance object, multiline text object, or a block reference.

Remarks

Not all leaders have annotation objects. If a leader has no annotation, this property will return Nothing (logical False). To test for a logical False value in VB or VBA, use the Nothing keyword.

Examples

VBA:

Sub Example_Annotation()
    ' This example creates a leader in model space with an associated
    ' annotation and then checks for the existence of an
    ' Annotation object for the new Leader
   
    Dim leaderObj As AcadLeader, MTextObj As AcadMText
    Dim points(0 To 8) As Double, insertionPoint(0 To 2) As Double, width As Double
    Dim leaderType As Integer
    Dim annotationObject As Object
    Dim textString As String, msg As String
    
    ' Define the new MText object
    textString = "Hello, World."
    insertionPoint(0) = 5: insertionPoint(1) = 5: insertionPoint(2) = 0
    width = 2
    
    ' Create the MText object in model space
    Set MTextObj = ThisDrawing.ModelSpace.AddMText(insertionPoint, width, textString)
    
    ' Data for Leader
    points(0) = 0: points(1) = 0: points(2) = 0
    points(3) = 4: points(4) = 4: points(5) = 0
    points(6) = 4: points(7) = 5: points(8) = 0
    leaderType = acLineWithArrow
       
    ' Create the Leader object in model space and Associate new MText object
    ' with new Leader by making the MText object the annotation for the Leader
    Set annotationObject = MTextObj
    Set leaderObj = ThisDrawing.ModelSpace.AddLeader(points, annotationObject, leaderType)
    ThisDrawing.Application.ZoomAll

    ' Display whether or not this particular Leader has an associated Annotation
    msg = IIf(leaderObj.Annotation Is Nothing, "does not have", "has")
    MsgBox "The new Leader object " & msg & " an associated Annotation object."
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_Annotation()
    ;; This example creates a leader in model space with an associated
    ;; annotation and then checks for the existence of an
    ;; Annotation object for the new Leader
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
  
    ;; Define the new MText object
    (setq insertionPoint (vlax-3d-point 5 5 0)
          textString "Hello, World."
          width 2)
    
    ;; Create the MText object in model space
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq MTextObj (vla-AddMText modelSpace insertionPoint width textString))
    
    ;; Data for Leader
    (setq points (vlax-make-safearray vlax-vbDouble '(0 . 8)))
    (vlax-safearray-fill points '(0 0 0
				  4 4 0
				  4 5 0
				 ))
    (setq leaderType acLineWithArrow)
       
    ;; Create the Leader object in model space and Associate new MText object
    ;; with new Leader by making the MText object the annotation for the Leader
    (setq annotationObject MTextObj)
    (setq leaderObj (vla-AddLeader modelSpace points annotationObject leaderType))
    (vla-ZoomAll acadObj)

    (alert "The new Leader object has an associated Annotation object.")
)