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

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

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

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

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

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

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

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

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

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

楼主十年磨一剑

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


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

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


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

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

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.number0 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里应该调用什么命令?