如何在VB中开关非当前层?
如何在VB中开关非当前层? 为什么许多材料上介绍这个方法时,都是先建立一个新图层,再将其设成为当前层,然后再关闭或打开? 使用图层的LayerOn 属性TRUE: 为打开图层
FALSE: 为关闭图层 我的问题是假设当前层是0层,而是要开关1,2,3......层。1,2,3.....层均已建立。 请举一个例子! Sub SetLayerOff()
Dim LayerName As String
LayerName = "1"
On Error Resume Next
Err.Number = 0
Dim MyLayer As AcadLayer
Set MyLayer = ThisDrawing.Layers(LayerName)
If Err.Number = 0 Then
ThisDrawing.Layers(LayerName).LayerOn = False
ThisDrawing.Utility.Prompt vbCrLf & " 图层“" & LayerName & "”已经被关闭。"
Else
ThisDrawing.Utility.Prompt vbCrLf & " 图层“" & LayerName & "”不存在。"
End If
End Sub Ok! 其实我是这么做得:
Dim entobj As AcadLayer
Set entobj = ThisDrawing.Layers.Item("1")
entobj.LayerOn = False 写程序不是这么简单。
首先你要考虑如果该图层不存在的情况,如果图层不存在,则你写的那几句就会出错。 mccad发表于2003-9-2 7:03:00static/image/common/back.gif写程序不是这么简单。
首先你要考虑如果该图层不存在的情况,如果图层不存在,则你写的那几句就会出错。
说的不错。写程序一定要考虑其完整性。 mccad!
页:
[1]