Item 方法
利用位置或键返回 Collection 对象的指定成员。
语法object.Item(index)
Item 方法的语法具有下列对象限定符和部分:
部分 | 描述 |
---|---|
object | 必要。对象表达式,其值为“应用于”列表中对象。 |
index | 必要。为一表达式,指定集合中成员的位置。如果是数值表达式,则 index 必须是从 1 到集合 Count 属性值之间的数值。如果是字符串表达式,则当加入一被引用的成员到集合时,index 必须和 key 参数对应。 |
如果 index 值无法与集合的任何现有成员匹配,就会导致错误发生。
Item 方法是集合的缺省方法。因此,以下两行程序代码等价:
Print MyCollection(1)
Print MyCollection.Item(1)
批量删除除 0 层和 "jzd"以外的图层为例,代码如下:
Sub 删除多余图层()
'yngqq:443440204
On Error Resume Next
Dim lay As AcadLayer
For Each lay In ThisDrawing.Layers
If lay.Name <> "0" And lay.Name <> "jzd" Then
lay.Delete
End If
Next
End Sub
当图层被其他对象参照时,无法删除
删除某个图层代码(isempty)
IsEmpty 函数
返回 Boolean 值,指出变量是否已经初始化。
语法IsEmpty(expression)
必要的 expression 参数是一个 Variant,包含一个数值或字符串表达式。但是,因为 IsEmpty 被用来确定个别变量是否已初始化,所以 expression 参数通常是单一变量名。
说明
如果变量未初始化或已明确设置为 Empty,则 IsEmpty 返回 True;否则返回 False。如果 expression 含有多个变量,则 IsEmpty 总是返回 False。IsEmpty 只返回对 variant 表达式有意义的信息。
Sub 删除某一个图层()
'yngqq:443440204
On Error Resume Next
Dim objlayer As AcadLayer
Set objlayer = ThisDrawing.Layers("JZP")
a = IsEmpty(objlayer)
If Not IsEmpty(objlayer) Then
objlayer.Delete
End If
End Sub