变体用于从 ActiveX 函数传递和返回值,这些函数可以返回不同类型的数据。 注意:AutoLISP 中的 ActiveX 支持仅限于 Windows。
有几个 AutoLISP 函数允许您创建和使用变体:
该函数接受两个参数:值和类型。值参数是要分配给多属性的值。type参数指定要存储在变型中的数据类型。对于“类型”,请指定以下常量之一:vlax-make-variant
注意:常量的计算结果为整数值。由于整数值可以更改,因此应始终引用常量,而不是整数值。
例如,以下函数调用创建一个整数变体并将其值设置为 5: (setq varint (vlax-make-variant 5 vlax-vbInteger)) #<variant 2 5> 返回值指示变体的数据类型 (2,即) 和变体的值 (5)。如果未指定数据类型,则该函数将分配默认类型。vbIntegervlax-make-variant 例如,以下函数调用创建一个变体并为其赋值 5,但不指定数据类型: (setq varint (vlax-make-variant 5)) #<variant 3 5> 默认情况下,将指定的整数值分配给“长整型”数据类型,而不是“整数”数据类型,正如您所期望的那样。为变量分配数值时,应明确说明所需的数据类型。如果未指定值或数据类型,则分配未初始化的变体。vlax-make-variantvlax-make-variantvlax-vbEmpty |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )
GMT+8, 2024-6-10 17:53
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.