找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 534|回复: 4

[ARX程序]:关于选择集的“或”问题

[复制链接]
发表于 2003-3-13 22:41:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
CString strPipeLayer;
CString strHeadLayer;
CString strRootLayer;
我怎么设置链表,才可以选择strPipeLayer、strRootLayer和strHeadLayer的值对应的图层中的所有实体?
(注意是要用户选择的实体中的那些层所对应的实体)
谢谢了~~
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2003-3-15 15:25:31 | 显示全部楼层

Re: 关于选择集的“或”问题

最初由 cedarzhou 发布
[B]CString strPipeLayer;
CString strHeadLayer;
CString strRootLayer;
我怎么设置链表,才可以选择strPipeLayer、strRootLayer和strHeadLayer的值对应的图层中的所有实体?
(注意是要用户选择的实体中的那些层?.. [/B]


可用 组码 -4  来“或”。

:)

不过,你说的情况,可以不用 “或”来解决

  1. ads_name ss;
  2. struct resbuf *pRbList=NULL;
  3. pRbList = acutBuildList(AcDb::kDxfLayerName,[color=red]"PipeLayer,HeadLayer,RootLayer"[/color],0);
  4. acedSSGet(NULL,NULL,NULL,pRbList,ss);
复制代码
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-3-15 15:40:28 | 显示全部楼层

谢谢楼上

谢谢RAVE:不过,我的意思不是“PipeLayer,HeadLayer,RootLayer”这三个层,而是在对话框中选择的任意三个层,这三个层对应CString strPipeLayer;
CString strHeadLayer;CString strRootLayer。所以pRbList = acutBuildList(AcDb::kDxfLayerName,"PipeLayer,HeadLayer,RootLayer",0);可能不行呢。
还有,条件过滤(组码 -4 )我看了半天也搞不懂什么意思?老兄可否帮我就这个例子写一下呢?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-3-15 23:14:25 | 显示全部楼层

Re: 谢谢楼上

最初由 cedarzhou 发布
[B]谢谢RAVE:不过,我的意思不是“PipeLayer,HeadLayer,RootLayer”这三个层,而是在对话框中选择的任意三个层,这三个层对应CString strPipeLayer;
CString strHeadLayer;CString strRootLayer。所以pRbList = acutB... [/B]

  1. ads_name ss;
  2. struct resbuf *pRbList=NULL;

  3. [color=red]CString strLayerFilter;
  4. strLayerFilter.Format("%s,%s,%s", strHeadLayer,strRootLayer,strPipeLayer)[/color];

  5. pRbList = acutBuildList(AcDb::kDxfLayerName,[color=red]strLayerFilter[/color],0);

  6. acedSSGet(NULL,NULL,NULL,pRbList,ss);
复制代码
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

发表于 2003-3-17 09:51:06 | 显示全部楼层
斑竹,你们使用下面的方法,我为什么看不到"或"的表示呢?
strLayerFilter.Format("%s,%s,%s", strHeadLayer,strRootLayer,strPipeLayer);
pRbList = acutBuildList(AcDb::kDxfLayerName,strLayerFilter,0);
我都是使用acutBuildList(-4,"<OR",8,"LAYER1",,8,"LAYER2",-4,"OR>",8,"LAYER1",8,"LAYER2",-4,"OR>",0)有什么不对或不足吗?
请指教,谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-20 20:22 , Processed in 0.196696 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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