乐筑天下

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

[求助]AcadSelectionSet如何使用?

[复制链接]

5

主题

11

帖子

2

银币

初来乍到

Rank: 1

铜币
31
发表于 2009-4-13 19:47:00 | 显示全部楼层 |阅读模式
代码如下:
private AcadApplication a;//声明对象
a = new AcadApplicationClass();//创建AutoCAD对象
  short[] filterType=new short[2];
            object  [] filterData = new object[2];
            filterType[0]=0;
            filterData[0]="circle";
            filterType[1] = 8;
            filterData[1] = "layer1";
           try
            {
                AutoCAD.AcadSelectionSet set = a.ActiveDocument.SelectionSets.Add("test");//执行这句后,跟踪set的count是0
                 set.Select(AcSelect.acSelectionSetAll, null, null, filterType, filterType);//执行这句后,提示对com的调用返回HRESULT-FAIL
                set.Highlight(true);//高亮显示
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

请问这个方法该如何调用,是程序哪里出了问题?我使用的是cad2004,.net2005,arxforcad2004.请各位多多指教!谢谢!
回复

使用道具 举报

0

主题

38

帖子

1

银币

初来乍到

Rank: 1

铜币
38
发表于 2009-4-13 21:31:00 | 显示全部楼层
出错在这句:AutoCAD.AcadSelectionSet set = a.ActiveDocument.SelectionSets.Add("test");
“test”是不能加入到选择集中的,选择集中存储的应该是对象句柄之类的东西,而不是一个任意的字符串。
回复

使用道具 举报

5

主题

11

帖子

2

银币

初来乍到

Rank: 1

铜币
31
发表于 2009-4-14 12:23:00 | 显示全部楼层
谢谢!请问应该加什么才对呢?我试了一些方法都不行。
回复

使用道具 举报

5

主题

11

帖子

2

银币

初来乍到

Rank: 1

铜币
31
发表于 2009-4-14 23:29:00 | 显示全部楼层
已经可以了,set的数目是为1了。
不过始终选择不到图层layer1里的圆,返回的选择count总是0.
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-2-6 04:05 , Processed in 0.264692 second(s), 60 queries .

© 2020-2025 乐筑天下

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