乐筑天下

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

明总:为什么我这个屏选不到,老出错??

[复制链接]

16

主题

39

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
103
发表于 2003-10-5 09:22:00 | 显示全部楼层 |阅读模式
Sub Ch4_AddToASelectionSet()
    ' 创建新的选择集
    Dim sset As AcadSelectionSet
    Set sset = ThisDrawing.SelectionSets.Add("SS1")
   
    ' 提示用户选择对象,
    ' 并将其添加到选择集中。
    ' 要完成选择,请按回车键。
    sset.SelectOnScreen
   
End Sub
回复

使用道具 举报

2

主题

77

帖子

6

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
85
发表于 2003-10-5 10:40:00 | 显示全部楼层
不能重复创建同名的选择集,运行第一次后SS1选择集便已经存在.
可以在程序处理完成后添加sset.Delete
回复

使用道具 举报

16

主题

39

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
103
发表于 2003-10-5 17:17:00 | 显示全部楼层
有没有防止出这样的错误的代码段?
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2003-10-5 19:51:00 | 显示全部楼层
你可以先用On Error Resume Next
然后使用该名称来建立一个选择集,如果此时出错,则该名称的选择集存在,此时可以直接得到该名称的选择集,然后再清除该选择集中的对象。
在实用函数中有这样的一个函数建立选择集,使用的也就是这种原理。
回复

使用道具 举报

16

主题

39

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
103
发表于 2003-10-5 19:57:00 | 显示全部楼层
是不是这样??
Sub Ch4_AddToASelectionSet()
On Error Resume Next
    ' 创建新的选择集
    Dim sset As AcadSelectionSet
    Set sset = ThisDrawing.SelectionSets.Add("SS1")
   
    ' 提示用户选择对象,
    ' 并将其添加到选择集中。
    ' 要完成选择,请按回车键。
    sset.SelectOnScreen
   
End Sub
回复

使用道具 举报

16

主题

39

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
103
发表于 2003-10-5 20:01:00 | 显示全部楼层
我要的是要在CAD中用VBA选中一个标注,然后对这个标注进行加公差操作!所以要屏选!
你说的选中这个标注的代码可否具体一点的代码段????
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2003-10-5 20:02:00 | 显示全部楼层
还差一些:
if err then
    err.clear
    set sset =thisdrawing.selectionsets.item("ss1")
    sset.clear
end if
这样才能保证选择集是空的。
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2003-10-5 20:06:00 | 显示全部楼层
如果只是想选中一个对象,可以使用GetEntity方法。然后用Do Loop循环来判断选中的对象是否为标注对象。
如果是想选中多个对象,可以使用SelectOnScreen再加上过滤器来选择。过滤器的原理与DXF一样。
回复

使用道具 举报

41

主题

657

帖子

9

银币

中流砥柱

Rank: 25

铜币
821
发表于 2003-10-5 23:12:00 | 显示全部楼层
或者在最后加上
sset.clear
sset.delete
回复

使用道具 举报

16

主题

39

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
103
发表于 2003-10-6 10:19:00 | 显示全部楼层
我说的是要在CAD中用鼠标点选.........选中一个标注,然后对这个标注进行加公差操作!所以要屏选!
用鼠标点选..
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-6-29 07:59 , Processed in 2.766933 second(s), 73 queries .

© 2020-2025 乐筑天下

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