[求助]关于清空块定义中所有实体的问题
Sub SetBlockEmpty(ByRef Doc As AutoCAD.AcadDocument, ByVal strBlockName As String)<BR> Dim objBlock As AutoCAD.AcadBlock<BR> Dim n As Integer<BR> Dim i As Integer<BR> <BR> Set objBlock = Doc.Blocks(strBlockName)<BR> <BR> If Err Then<BR> Err.Clear<BR> Exit Sub<BR> End If<BR> <BR> n = objBlock.Count'问题在这里,循环运行了若干次以后提示"无效的过程或调用参数"后终止. Regen后块引用中实体有所减少但未清空<BR> For i = 0 To n - 1<BR> objBlock.Item(i).Delete<BR> Next<BR>'-----------
<BR> Set objBlock = Nothing<BR>End Sub
看来是遍历有问题,请问现在想把块定义中的所有实体清空应该如何修改?谢谢. 已经解决了!
Do Until objBlock.Count = 0<BR> objBlock.Item(objBlock.Count - 1).Delete<BR>Loop 直接
for i= 0 to objBlock.count-1<BR> objBlock(0).Delete<BR>next i 多谢赐复! 虽然块中没有包含实体,但插入到图纸中的该块的块引用对象依然存在。 我的目的是对块的定义进行更新,清空原先的定义只是第一步.
页:
[1]