为什么选择集不稳定啊,大家帮帮忙吧!
我创建了一个选择集sstext然后filtertype=0
filterdata=“text”
sstext.Select(AcSelect.acSelectionSetWindow, point1, point2, filtertype, filterdata)
为什么这么选择以后,结果不稳定呢?有时候能选到有时候选不到?开始以为是选择范围不在视野范围内,后来把范围调小了,还是不行,时有时无的,我跟踪去看了,明明两点之间范围内是有东西的,我两点第一点是左上第二点是右下,和这个有关系么?弄的我莫名其妙啊。。谁能帮帮我啊,不行我只能用笨方法全图循环了。。。
还要求在视窗范围内 sieben 发表于 2012-2-18 14:50 static/image/common/back.gif
还要求在视窗范围内
肯定在视窗范围内啊,我没做一步都ZOOMALL一下的,还是不行,并且就是靠边的图不行,如果在中间的话就没事。。奇怪了。 本帖最后由 sieben 于 2012-2-19 09:51 编辑
1,或许你应该用SelectCrossingWindow
2,或许你应该去掉过滤器
3,既然你怀疑左上右下,为什么不换左下右上试试?
4,你的是VBA?还是COM?不是ObjectARX.Net吧?
试一下SelectAll试试
http://blog.csdn.net/sunchengbo2007/article/details/6626523
这个是选择集的介绍,我也不太懂。 sieben 发表于 2012-2-19 09:48 static/image/common/back.gif
1,或许你应该用SelectCrossingWindow
2,或许你应该去掉过滤器
3,既然你怀疑左上右下,为什么不换左下右上试 ...
目前还没搞清楚selectcrossingwindow和selectionsetwindow有什么区别,但是点的位置已经调整过了,开始是从左下到右上,后来改成左上到右下,都不行,时有时无的。。。要是去掉过滤器的话会很不效率啊,会选到很多没用的东西,影响运行速度怕。我用的是.COM要是objectarx就没问题了。。 selectcrossingwindow 矩形范围内以及和矩形框相交的实体会被选择上
selectwindow 矩形范围内实体会被选择上 sieben 发表于 2012-2-20 00:34 static/image/common/back.gif
selectcrossingwindow 矩形范围内以及和矩形框相交的实体会被选择上
selectwindow 矩形范围内实体会被选择 ...
我今天又试了下,还是不行,各种方法都试了,还是有时候选的上有时候选不上,包括去掉过滤,也不行,SELECTWINDOW和SELECTCROSSINGWINDOW也试了,还是不行,各种试验,全部以失败告终,只有SELECTALL可以,但是是全图都选上了。。我要放弃了。。。 我这两天也遇到这个问题,请看下图
我通过Editor.SelectCrossingWindow()分别选择三个图框中的对象进行处理,图中上面两个都正常,唯独下面第一个图形的标题栏丢了!
检查了框选点的坐标,没问题,我定义的分别是左下角-1和右上角+1,如果说没包括的话,应该连图框也没有啊,为什么偏偏少了标题栏呢?百思不得其解……
本帖最后由 James.W.H.Li 于 2012-8-6 09:51 编辑
解决了!
在较早的一个帖子中发现,有朋友提到需要先缩放视窗到显示全部图形,再框选需要的图形,就照着试了一下,立竿见影啊,呵呵,总结一下:
1、我是对当前打开的一个doc进行操作,使用Editor.SelectCrossingWindow()前需要先缩放窗口,具体做法请看【http://bbs.mjtd.com/forum.php?mod=viewthread&tid=92727】帖子的八楼;
2、我是对当前图形进行循环操作,需要多次打开同一个文档,因此在设定全局命令时,需要设定标识,即;
3、遇到问题解决了,别忘记来说一下怎么解决的,众人拾柴火焰高,呵呵。
谢谢大家!谢谢为本论坛添砖加瓦的朋友们,我在这里学到了越来越多的知识,其乐无穷!!
页:
[1]