caoyin 发表于 2009-1-11 15:19:00

[求助]怎样取出动态块中类型为8192的 SafeArray 中的元素

本帖最后由 作者 于 2009-1-11 15:21:02 编辑 <br /><br /> <p>如题</p><p>(setq OBJ (entsel "\n选择动态块: ")<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OBJ (vlax-ename-&gt;vla-object (car OBJ))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NAME (vla-get-EffectiveName OBJ)<br/>)<br/>(mapcar '(lambda (X)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;(vlax-variant-value (vla-get-AllowedValues X))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; )<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;(vlax-invoke OBJ 'GetDynamicBlockProperties)<br/>)</p>

liu_kunlun 发表于 2009-1-11 15:48:00

<p>这要试验了。</p><p>如果是集合,可以用vlax-for来循环得到内部元素</p><p>如果是safearray,有函数(vlax-safearray-&gt;list</p><p>其间可能还需要(vlax-variant-value&nbsp;的参与&nbsp;<br/></p>

caoyin 发表于 2009-1-11 15:55:00

vlax-safearray-&gt;list如何取出类型为 8192 的元素

liu_kunlun 发表于 2009-1-11 16:06:00

我用的是2004,我从来没用过动态块,没法做试验。看有没有资料查数据类型常数,看8192代表什么内型。

0451doctor 发表于 2009-9-14 07:25:00

继续呀,没人知道吗
页: [1]
查看完整版本: [求助]怎样取出动态块中类型为8192的 SafeArray 中的元素