[求助]怎么用VBA实现选择集中的实体处于被选中状态?
如题。 我想在VBA程序中实现选中选择集中的实体的功能,就象用鼠标在屏幕上选中实体那样的效果,代码应该怎么写呢? 先按一定的筛选条件,把实体放到一个选择集SelectionSet里,然后想让这些实体在屏幕上显示为被选中状态。 自己翻了好长时间帮助文件,也没找到解决的方法。特来求助,希望能有高人给解答一下。用哪些VBA代码能让选择集中的实体的显示处于被选中状态? 就是实体上有夹点的状态,如下图:
http://tkfiles.storage.msn.com/x1pjzF2-RYhxRV-J-gbwn4tnGH72VWfAomvyuFED3tq7zFNtUc1aLm_gVudMVZh02b-daz0nUHTOC33MnbEpc1_QD5sGKFj4ptLKfakctPUZvI
谢谢大佬指点,vb6读取图形数据很慢,要是能用lisp去读取,再用Vb6去计算,速度会快点。想用vb中坐标去实现(ssget "_WP" pt_list '((0 . "*TEXT")))将文本传回vb中,想一想这个要求都很变态。用vb6吧,acadSSet.Select 0, pt1, pt2, FilterType:=arrGroupCode, FilterData:=arrDataValue读取速度居然0.02秒,如果读取800个表格单位,结果真悲催
13楼的方法是要把代码复制到txt里面,另存为vlax.cls文件,再加载到工程里面,然后把选择集显示夹点的过程放在模块中,在程序中调用。
VB6也可以的,我两种都用过。不过13楼的方法兼容性稳定性不是很好,数据大时运行较慢。我说的发送命令的方法效率较高,就是命令行要多显示发送过去的命令。 ent.Highlight True
但好像只能亮显,没有出现夹点。
多谢楼上的能回贴。亮显这个我倒是知道的,但我想要用VBA选中一些特定的实体,然后进行一些手动的操作。所以光是亮显还是不能解决问题。 使用选择集选择指定对象(组),然后可进行手工操作
能麻烦版主把代码写出来吗?
如果谁知道用LISP能实现这样的效果,也麻烦提供一下示例代码。先谢谢了。
;设为选中状态
(defun cc()
(setq ss (ssget))
(sssetfirst ss ss)
)
页:
[1]
2