pmq 发表于 2005-12-9 16:35:00

CAD菜单“显示顺序”置前、置后,VBA里应该调用什么命令?

CAD菜单“显示顺序”置前、置后,VBA里应该调用什么命令?

pmq 发表于 2015-3-3 10:09:30

ThisDrawing.SendCommand "_draworder" & vbCr & "p" & vbCr & vbCr & "f" & vbCr

ThisDrawing.SendCommand "_draworder" & vbCr & "p" & vbCr & vbCr & "b" & vbCr

zzyong00 发表于 2015-3-3 14:26:39

哈哈,自己十年后回复自己的问题

szj612 发表于 2015-3-9 00:46:31

这个真是有意思,楼主真是有心人

北莽刀客 发表于 2015-11-15 18:58:12

楼主十年磨一剑

向卫 发表于 2015-12-14 23:22:50

pmq 发表于 2015-3-3 10:09 static/image/common/back.gif
ThisDrawing.SendCommand "_draworder" & vbCr & "p" & vbCr & vbCr & "f" & vbCr

ThisDrawing.SendComm ...

楼主话说用sortentstable怎么解决呢?
而且draworder必须要手动选择才行啊

mikewolf2k 发表于 2015-12-15 09:20:29

向卫 发表于 2015-12-14 23:22 static/image/common/back.gif
楼主话说用sortentstable怎么解决呢?
而且draworder必须要手动选择才行啊

应该是通过其它方式事先选择过了,所以在这里通过P选择上次选择的物体。

pmq 发表于 2016-2-20 15:00:19

Public Sub CommQZ() '前置
    On Error Resume Next
    Dim esc As String
    esc = Chr(3) & Chr(3)
    ThisDrawing.SendCommand esc
   
    Dim sset1 As AcadSelectionSet
    Set sset1 = ThisDrawing.SelectionSets.Add("ss1")
    If Err.number <> 0 Then
      Err.Clear
      Set sset1 = ThisDrawing.SelectionSets.Item("ss1")
      sset1.Clear
    End If
    ThisDrawing.Utility.Prompt ("请框选要前置的对象:")
    sset1.SelectOnScreen
    If sset1.count = 0 Then
      Exit Sub
    End If
   
    '0恢复普通模式的消息反馈
    '1   禁止不确定的消息反馈
    ThisDrawing.SetVariable "nomutt", 1
    ThisDrawing.SendCommand "_draworder" & vbCr & "p" & vbCr & vbCr & "f" & vbCr
    ThisDrawing.SetVariable "nomutt", 0
    sset1.Clear
    sset1.Delete
End Sub
页: [1]
查看完整版本: CAD菜单“显示顺序”置前、置后,VBA里应该调用什么命令?