user defined block in mleader

user defined block in mleader

mo126940
Explorer Explorer
1,297 Views
2 Replies
Message 1 of 3

user defined block in mleader

mo126940
Explorer
Explorer

Hi, 

I'm sorry, but my problem is that I can not use a user-defined block in a mleader using VBA, and I do not find code examples explaining how to do it ...

If i try 

 

Sub InsMultileaderUBlock()
Dim oML As AcadMLeader
Dim points(0 To 14) As Double

' Define the leader points
points(0) = 1: points(1) = 1: points(2) = 0
points(3) = 1: points(4) = 2: points(5) = 0
points(6) = 2: points(7) = 2: points(8) = 0
points(9) = 3: points(10) = 2: points(11) = 0
points(12) = 4: points(13) = 4: points(14) = 0
Dim i As Long
Set oML = ThisDrawing.ModelSpace.AddMLeader(points, i)
oML.ContentType = acBlockContent
oML.ContentBlockName = "POS_R"
oML.ContentBlockType = acBlockUserDefined
oML.ArrowheadSize = 10
oML.leaderType = acSplineLeader
oML.TextRightAttachmentType = acAttachmentMiddle
oML.TextLeftAttachmentType = acAttachmentMiddle

End Sub

 

 when i define oML.ContentBlockType = acBlockUserDefined , the system say :

Cattura.PNG

 

 

 

 

Thanks in advance ...

0 Likes
Accepted solutions (1)
1,298 Views
2 Replies
Replies (2)
Message 2 of 3

ambrosl
Autodesk
Autodesk
Accepted solution

Are you trying to assign a Block to the content or arrowhead of the MLeader?  In either case, you don't need to set the ContentBlockType or ArrowheadType properties to a value of acArrowUserDefined.  Simply assign the user-defined block name to ContentBlockName or ArrowheadBlock properties.

 

Comment out oML.ContentBlockType = acBlockUserDefined and the code should execute as expected.



Lee Ambrosius
Senior Principal Content Experience Designer
For additional help, check out the AutoCAD Developer Documentation
Message 3 of 3

mo126940
Explorer
Explorer

Hi Ambrosl,

now the code work very fine, thank you very much.

 

Bye

0 Likes