添加自定义绘图时出错
我正在使用这里找到的VVA中的代码来检索和设置自定义图形属性,并试图找出如何捕捉错误。我得到的典型错误是:
** ERROR: ActiveX Server returned an error: Parameter not optional **
当我认为已经为变量赋值,然后尝试将自定义图形特性设置为该值,但实际上变量为零时,就会出现这种情况。
我知道我可以使用(vl catch all apply),但我很难找到正确的使用方法。有谁能给我一个使用(vl catch all apply)或其他方法在设置这些值时排除错误的通用示例吗?谢谢 测试零变量?
(if <variable>
(dosomestuff)
)
或测试字符串变量
(if (eq (type <variable>) 'STR)
(dosomestuff)
) 依靠vl的全包应用通常不是一个好主意,最好检查变量,如Lee&VVA所示。。。BBBUUUTTT。。。因为没人给你展示过“一网打尽”的东西。。。下面是:
假设您使用的是VVA的_dwgru-dwgprops-set-custom-prop,但您不想首先测试键和值,而是希望它继续:
基本上,它计算第一个参数(因此需要引用defun的名称)。然后它将第二个参数作为参数传递给被求值函数-这就是为什么它需要在列表中。
结果是,它返回函数通常会返回的任何内容,除非有错误。然后返回一个错误对象——这就是vl-catch-all-error-p测试的目的。
我很难为情地说,我甚至没想过按你们俩说的去做。我看到了这个错误,立即想这不是你的典型错误,所以我必须做一些特别的事情。
Irneb,
谢谢你的例子和建议!! vl catch all apply的另一个示例可能提供了一些见解。
http://www.cadtutor.net/forum/showthread.php?55749-vl catch all apply-%28捕捉错误%29&p=377850&viewfull=1#post377850
页:
[1]