如何让图形处于被选中状态(类似于鼠标框中后的效果)
最近做程序发现个小问题,通过选择集筛选的图形执行完程序后,在CAD图中无法处于被选中状态(类似于鼠标框中后的效果),因为我还有很多后续操作需要人工判断执行,不知道哪位达人能否相助。是否有代码可以实现此功能? highlight方法highlight 系统变量改为1 (sssetfirst nil (ssget)) ed.SetImpliedSelection(res2.Value.GetObjectIds()); 谢谢大家 问题解决了 你是怎样做到的,共享一下,我搞了好多天,也没搞成
一段测试代码
<CommandMethod("SSS")> Public Shared Sub 筛选()
Dim dm As DocumentCollection = Application.DocumentManager
Dim ed As Editor = dm.MdiActiveDocument.Editor
'获取当前数据库作为目标数据库
Dim Db As Database = dm.MdiActiveDocument.Database
dm.MdiActiveDocument.LockDocument()
Dim ids() As ObjectId
Dim N As Integer = 0
Using trans As Transaction = Db.TransactionManager.StartTransaction()
Dim bt As BlockTable = trans.GetObject(Db.BlockTableId, OpenMode.ForRead)
Dim btr As BlockTableRecord = trans.GetObject(bt(BlockTableRecord.ModelSpace), OpenMode.ForRead)
' 遍历选择集.
For Each EntId As ObjectId In btr
Dim en As Entity = trans.GetObject(EntId, OpenMode.ForRead)
If TypeOf en Is Line Then
ReDim Preserve ids(N)
ids(N) = EntId
en.Highlight()
N = N + 1
End If
Next
ed.SetImpliedSelection(ids)
End Using
End Sub 感谢楼上的分享
页:
[1]