artken 发表于 2008-12-20 18:29:00

紧急求助,关于属性文字样式

本帖最后由 作者 于 2008-12-21 10:15:29 编辑 <br /><br /> <p>想修改属性块中标记为PLAN的属性文字的样式,</p><p>以下是代码会修改一个属性块中的所有的属性文字,如何改成只修改标记为PLAN的属性文字的,其它标记的不修改。</p><p>&nbsp; (if (setq lst&nbsp;(safearray-value (variant-value (vla-getattributes (vlax-ename-&gt;vla-object blk)))))<br/>&nbsp;&nbsp;&nbsp; (foreach a lst<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (if (=&nbsp;(<font color="#ff0000">这个地方怎么写?</font> ) "PLAN")<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;(vla-put-stylename a "AAA")<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )<br/>&nbsp;&nbsp;&nbsp; )<br/>&nbsp; )</p><p></p><p></p>

caoyin 发表于 2008-12-21 10:13:00

本帖最后由 作者 于 2008-12-21 10:14:36 编辑 <br /><br /> <p>&nbsp;&nbsp; (mapcar '(lambda (x)</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color="#ff0000">&nbsp;(if (=(vla-get-tagstring x)"PLAN");;此处加一个判断</font></p><p><font color="#ff0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (progn</font><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;(vla-put-layer x "text-en")&nbsp; ;设置层为text-en<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;(vla-put-color x acbylayer)&nbsp; ;设置颜色随层<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (vla-put-stylename x "AAAA");设置字体样式为自定义的AAAA<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;(vla-put-height x 3)&nbsp;&nbsp;&nbsp;&nbsp; ;设置字体高度为3,此处可以加一个图纸比例<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;(vla-put-scalefactor x 0.7)&nbsp; ;设置宽度比例为0.7</p><p>&nbsp;&nbsp;&nbsp;<font color="#ff0000">&nbsp;&nbsp; ))</font></p><p>(safearray-value (variant-value (vla-getattributes (vlax-ename-&gt;vla-object blk))))<br/></p>

artken 发表于 2008-12-21 10:17:00

<p>CAOYIN版主,不好意思。我编辑帖子的时候。你刚好同时回复。不过意思跟原来是一样的</p><p>非常感谢!</p>

caoyin 发表于 2008-12-21 10:29:00

(foreach a (vlax-invoke (vlax-ename-&gt;vla-object blk) 'getattributes)<br/>&nbsp;&nbsp;(if <font color="#ff0000">(=(vla-get-tagstring x) "PLAN");;此处加一个判断</font><br/>&nbsp;&nbsp;&nbsp;&nbsp;(vla-put-stylename a "AAA")<br/>&nbsp; )<br/>)
页: [1]
查看完整版本: 紧急求助,关于属性文字样式