语法 (vl-propagate 'symbol)
功能
将变量的值复制到所有打开的文件名称空间(并在当前 AutoCAD 任务中打开的所有后续图形中设置它的值)。
说明 参数 symbol 为符号,指定 AutoLISP 变量。 返回值: 未确定。 样例: 命令:(vl-propagate 'diameter) nil
从以上说明中,是否可以说明一旦完成(vl-propagate 'diameter)函数,后续打开的CAD文件中,diameter都不为nil?
我的问题是,下面的代码在加入启动组后,无论打开多个少CAD文件,在F2文本窗口中,看不到(Princ "\n我活着")运行的结果?
(if (not checkall20131205)
(progn
(vl-load-com)
(setq checkall20131205 "checkall20131205")
(vl-propagate 'checkall20131205)
)
(Princ "\n我活着")
)
望高手能指点一下,上面的代码只是例子,本意是想实现在首次打开CAD时运行自检代码,然后使用vl-propagate 来保存一个值,后续打开其它CAD文件时,当检查到已经自检过了,就不需要再自检了。但以上代码说明这个想法不能实现。
|