![]() |
[求助]对象反应器的回调函数的问题<探索中...>
[求助]对象反应器的回调函数的问题<探索中...>
www.dimcax.com [求助]对象反应器的回调函数的问题<探索中...> 我的程序是对一个属性块上添加反应器,如果该属性块的值更改,另一个属性块对应属性也更改相同的值。看视简单,但还是无法实现,关键在回调函数上: 假如添加反应器的属性块为 obj1,用下面语句添加反应器: (setq btlreactor (vlr-object-reactor (list obj1) "btl reactor" '((:vlr-subobjmodified . changeth)))) 尝试用几种方法写回调函数,总是不成功,“错误:automation 错误,未提供说明” 或者autocad突然退出,请各位大侠帮忙! 问题已解决!在回调函数中,不能使用vla函数,否则,出错!改用lisp的函数改写,成功! 但是,autocad的帮助文件中说明“回调函数只能用 activex 方法修改 autocad 对象,而 activex 方法要求使用 vla 对象。”,用vla函数却不成功,用entget在回调函数中可以获得实体,真不明白!!! d 用 :vlr-subobjmodified 应该不对,因为属性不属于块的子图元 d :vlr-modified 更不行,更改属性值,反应器不起作用,但是用夹点方式改变属性标签位置时,反应器起作用;用vlr-subobjmodified 时,更改属性值时,反应器起作用。 d |
所有的时间均为北京时间。 现在的时间是 01:06 AM. |