Bryco 发表于 2007-4-1 00:35:03

dim bActive 作为布尔值
在 startcommand
中将此 true 设置为 false
,如果在启动 start 命令时为 true,则 endcommand 从未被激活(发生了转义)。现在重置图层

cadpro 发表于 2007-4-1 01:38:47

Bryco,
我按照你在上一篇帖子中说的做了,但是不起作用。在第三步中,您写道,如果StartCommand为true,则EndCommand永远不会激活。所以我的问题是,如果EndCommand从未激活,那么boolean为真,这是在startcommand中设置的。因此所需的代码片段不会运行。谢谢

Keith™ 发表于 2007-4-2 01:51:08

看着图层管理器,因为你使用线命令,转义yadayada
Option Explicit
Private Curlayer As AcadLayer
Private bActive As Boolean
Private Sub AcadDocument_BeginCommand(ByVal CommandName As String)
    If bActive Then
      ThisDrawing.ActiveLayer = Curlayer
    End If
   
    If CommandName = "LINE" Then
      Set Curlayer = ThisDrawing.ActiveLayer
      ThisDrawing.ActiveLayer = ThisDrawing.Layers("0")
      bActive = True
    End If
End Sub
Private Sub AcadDocument_EndCommand(ByVal CommandName As String)
    If CommandName = "LINE" Then
      bActive = False
      ThisDrawing.ActiveLayer = Curlayer
    End If
End Sub

Bryco 发表于 2007-4-2 22:48:47

不要!没用。
页: 1 [2]
查看完整版本: 取消定义/重新定义Xref