乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 85|回复: 7

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

[复制链接]

1

主题

5

帖子

1

银币

初来乍到

Rank: 1

铜币
9
发表于 2006-3-13 20:26:00 | 显示全部楼层 |阅读模式
小弟是cad开发的新手,现在想请教各位大哥一个比较弱智的问题
我的目的是想将屏幕上已经被选取的实体放到一个selectionset中,而不希望用SelectOnScreen,因为这个函数要提示用户再去到屏幕中去选择。比如说我已经在屏幕上选取了3条线,然后点击按钮,我希望是对包含这三条线的selectionset进行操作,而不要再提示用户去选择这三条线。
小弟实在对cad中各个对象和函数不大熟悉,已经被这个问题折磨几天了,希望有高人能帮我解决一下。
回复

使用道具 举报

1

主题

5

帖子

1

银币

初来乍到

Rank: 1

铜币
9
发表于 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
回复

使用道具 举报

1

主题

5

帖子

1

银币

初来乍到

Rank: 1

铜币
9
发表于 2006-3-13 20:54:00 | 显示全部楼层
怎么没有高人来指点下啊!!小弟真的是很急啊。
回复

使用道具 举报

1

主题

5

帖子

1

银币

初来乍到

Rank: 1

铜币
9
发表于 2006-3-13 21:30:00 | 显示全部楼层
2楼的大哥,我按你的方法试过了,怎么就算我已经在屏幕上选中了实体再运行代码,最后用a = sl.count检验得到的始终是a = 0啊!!!??
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2006-3-13 21:37:00 | 显示全部楼层
置顶的帖子就有

回复

使用道具 举报

1

主题

5

帖子

1

银币

初来乍到

Rank: 1

铜币
9
发表于 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
我测试可以,,,好象函数是区分大小写的,
回复

使用道具 举报

1

主题

5

帖子

1

银币

初来乍到

Rank: 1

铜币
9
发表于 2006-3-14 09:54:00 | 显示全部楼层
楼上两位大哥,我按你们的方法都试过了,有点进展,但是还是有点小问题。我试的结果是无论是用pickfirstselection还是activeselection,当多次运行程序后,都只能将刚刚选中的第一个实体加入到选择集中,而后面的实体都无法进入,结果就是从第二次开始无论我选中多少实体,sl.Count始终为1,感觉好奇怪啊!希望各位大哥再出来指点下。  
注:小弟用的是autocad2002(在线等待回复)!!!
回复

使用道具 举报

1

主题

5

帖子

1

银币

初来乍到

Rank: 1

铜币
9
发表于 2006-3-14 10:12:00 | 显示全部楼层
我又做了一下测试,是我自己代码的问题,现在问题已经完全解决了!!!
谢谢各位的帮忙,第一次来这里,感觉收获很大,希望以后好能多多交流哈!!!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-6 06:15 , Processed in 0.980775 second(s), 68 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表