编辑属性定义
From AutoCAD ActiveX/VBA
可以使用 Attribute 对象特性和方法来编辑属性。属性上的部分特性如下:
- Alignment
- Backward
- FieldLength
- Height
- InsertionPoint
- Mode
- PromptString
- Rotation
- ScaleFactor
- TagString
本例创建一个块,然后向块中添加属性。接着将块插入到图形中。然后更新属性文字,使其反向显示。
Sub Ch10_RedefiningAnAttribute()
' 定义块
Dim blockObj As AcadBlock
Dim insertionPnt(0 To 2) As Double
insertionPnt(0) = 0
insertionPnt(1) = 0
insertionPnt(2) = 0
Set blockObj = ThisDrawing.Blocks.Add _
(insertionPnt, "BlockWithAttribute")
' 向块添加属性Dim attributeObj As AcadAttributeDim height As DoubleDim mode As LongDim prompt As StringDim insertionPoint(0 To 2) As DoubleDim tag As StringDim value As Stringheight = 1mode = acAttributeModeVerifyprompt = "New Prompt"insertionPoint(0) = 5insertionPoint(1) = 5insertionPoint(2) = 0tag = "New Tag"value = "New Value"Set attributeObj = blockObj.AddAttribute(height, mode, _prompt, insertionPoint, tag, value)' 插入块,创建块参照' 和属性参照Dim blockRefObj As AcadBlockReferenceinsertionPnt(0) = 2insertionPnt(1) = 2insertionPnt(2) = 0Set blockRefObj = ThisDrawing.ModelSpace.InsertBlock _(insertionPnt, "BlockWithAttribute", 1#, 1#, 1#, 0)' 重定义属性文字,使其反向显示。attributeObj.Backward = TrueattributeObj.UpdateEnd Sub