明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1785|回复: 7

[在线求助]急!怎样将屏幕上已选中的实体加入到selectionset中??

[复制链接]
发表于 2006-3-13 20:26:00 | 显示全部楼层 |阅读模式

小弟是cad开发的新手,现在想请教各位大哥一个比较弱智的问题

我的目的是想将屏幕上已经被选取的实体放到一个selectionset中,而不希望用SelectOnScreen,因为这个函数要提示用户再去到屏幕中去选择。比如说我已经在屏幕上选取了3条线,然后点击按钮,我希望是对包含这三条线的selectionset进行操作,而不要再提示用户去选择这三条线。

小弟实在对cad中各个对象和函数不大熟悉,已经被这个问题折磨几天了,希望有高人能帮我解决一下。

发表于 2006-3-13 20:54:00 | 显示全部楼层

On Error Resume Next
acaddoc.SelectionSets("sel").Delete
Set sl = acaddoc.SelectionSets.Add("sel")

Set sl = acaddoc.ActiveSelectionSet   '将屏幕上已经被选取的实体放到sl

 楼主| 发表于 2006-3-13 20:54:00 | 显示全部楼层

怎么没有高人来指点下啊!!小弟真的是很急啊。

 楼主| 发表于 2006-3-13 21:30:00 | 显示全部楼层

2楼的大哥,我按你的方法试过了,怎么就算我已经在屏幕上选中了实体再运行代码,最后用a = sl.count检验得到的始终是a = 0啊!!!??

发表于 2006-3-13 21:37:00 | 显示全部楼层
发表于 2006-3-13 21:58:00 | 显示全部楼层

在模块中

Option Explicit
Dim acadApp As Object
Dim Preference As Object
Dim acaddoc As Object
Dim Paspace As Object
Dim MoSpace As Object

在窗体中

Private Sub Form_Load()
On Error Resume Next
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
   Err.Clear
   Set acadApp = CreateObject("AutoCAD.Application")
   If Err Then
      MsgBox Err.Description
      Exit Sub
   End If
End If

acadApp.Visible = True
Set Preference = acadApp.Preference
Set acaddoc = acadApp.ActiveDocument
Set MoSpace = acaddoc.ModelSpace
Set Paspace = acaddoc.PaperSpace

On Error Resume Next
acaddoc.SelectionSets("sel").Delete
Set sl = acaddoc.SelectionSets.Add("sel")

Set sl = acaddoc.ActiveSelectionSet

Text1 = sl.Count


End Sub
我测试可以,,,好象函数是区分大小写的,

 楼主| 发表于 2006-3-14 09:54:00 | 显示全部楼层

楼上两位大哥,我按你们的方法都试过了,有点进展,但是还是有点小问题。我试的结果是无论是用pickfirstselection还是activeselection,当多次运行程序后,都只能将刚刚选中的第一个实体加入到选择集中,而后面的实体都无法进入,结果就是从第二次开始无论我选中多少实体,sl.Count始终为1,感觉好奇怪啊!希望各位大哥再出来指点下。 

注:小弟用的是autocad2002(在线等待回复)!!!

 楼主| 发表于 2006-3-14 10:12:00 | 显示全部楼层

我又做了一下测试,是我自己代码的问题,现在问题已经完全解决了!!!

谢谢各位的帮忙,第一次来这里,感觉收获很大,希望以后好能多多交流哈!!!

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-27 06:26 , Processed in 0.175413 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表