第十二章 反应器和回调函数 (五) 检验和查询反应器
检验反应器可以使用 VLISP 的检验工具检查反应器。例如,使用对象反应器中定义的对象反应器将返回到变量 circleReactor 中。如果打开该变量的“检验”窗口,VLISP 将显示如下信息:
“检验”窗口中列出的条目如下:
该反应器的所有者对象
事件和与之相关联的回调函数
■该反应器是否是活动的:
●如果是活动的,added-p 为 T,否则它为 nil。
附着到反应器上的用户数据
■触发该反应器的文档范围:
●如果为 0,它仅在创建它的图形文档中触发;
●如果为 1,它可响应任何文档中的相关事件;
●详细信息请参见在多重名称空间中使用反应器。
双击以 {Owners} 开头的条目,可查看所有者对象列表:
双击列表条目可获取对应所有者的详细信息。
查询反应器
VLISP 还提供了可在应用程序里或控制台提示处查看反应器定义的函数:
vlr-type 返回指定反应器的类型,例如:
$ (vlr-type circleReactor)
:VLR-Object-Reactor
vlr-current-reaction-name 返回触发回调函数的事件名称。
vlr-data 返回附着到反应器的特定应用程序数据,例如:
$ (vlr-data circleReactor)
"Circle Reactor"
可用该数据区分触发同一个回调函数的多个反应器。
vlr-owners 返回向某对象反应器发出通报的 AutoCAD 图形中的对象(反应器所有者)列表,下述函数调用将列出 circleReactor 的所有者:
_$ (vlr-owners circleReactor)
(#<VLA-OBJECT IAcadCircle 03ad077c>)
vlr-reactions 返回指定反应器的回调条件-回调函数列表,下例将返回 circleReactor 的相关信息:
$ (vlr-reactions circleReactor)
((:vlr-modified . PRINT-RADIUS))
http://bbs.mjtd.com/xwb/images/bgimg/icon_logo.png 该贴已经同步到 明经通道的微博 昨晚新鲜出炉的,我来坐沙发。 楼主辛苦,向你致敬!顺便坐个板凳,也不错! 留看
http://bbs.mjtd.com/xwb/images/bgimg/icon_logo.png 来自 娱六月明 的新浪微博 感谢分享
http://bbs.mjtd.com/xwb/images/bgimg/icon_logo.png 来自 娱六月明 的新浪微博 老大辛苦了。
页:
[1]