qqw 发表于 2008-1-28 10:33:00

帮忙看看这段代码是什么错

<p></p><p>(setq dim (ssget '((0 . "DIMENSION"))))<br/>(setq COUNT_1 0)<br/>(while (&lt; COUNT_1 (sslength dim))<br/>(setq ENTITY_1 (entget (ssname dim COUNT_1)))<br/>(setq dim (cdr (assoc -1 ENTITY_1)))<br/>(setq dim (vlax-ename-&gt;vla-object dim))<br/>(vla-put-TextSuffix dim "qw")<br/>(setq COUNT_1 (+ COUNT_1 1))<br/>&nbsp;&nbsp; )&nbsp; </p><p></p><p></p>

ljpnb 发表于 2008-1-28 11:34:00

<p>修改如下:</p><p>(setq ss (ssget '((0 . "DIMENSION"))))<br/>(setq COUNT_1 0)<br/>(while (&lt; COUNT_1 (sslength ss))<br/>&nbsp; (setq ent (ssname ss COUNT_1)))<br/>&nbsp; (setq obj (vlax-ename-&gt;vla-object ent))<br/>&nbsp; (vla-put-TextSuffix obj "qw")<br/>&nbsp; (setq COUNT_1 (+ COUNT_1 1))<br/>)</p>

qqw 发表于 2008-1-28 11:51:00

不行啊

caoyin 发表于 2008-1-28 12:29:00

<p>2楼的</p><p>(setq ent (ssname ss COUNT_1)))</p><p><br/>多一个闭括号</p>

楚留香 发表于 2008-1-28 19:51:00

本帖最后由 作者 于 2008-1-28 19:52:37 编辑 <br /><br /> <p>你的意思就是在标注文字后面加个“qw”,下面就可以了</p><p>(setq dim (ssget '((0 . "DIMENSION"))))<br/>(setq COUNT_1 0)<br/>(repeat (sslength dim) <br/>(setq dim1 (ssname dim COUNT_1)) <br/>(setq dim1 (vlax-ename-&gt;vla-object dim1))<br/>(vla-put-TextSuffix dim1 "qw")<br/>(setq COUNT_1 (+ COUNT_1 1))<br/>&nbsp;&nbsp; )</p><p>你的程序:</p><p>(setq dim (ssget '((0 . "DIMENSION"))))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;dim是选择集<br/>(setq COUNT_1 0)<br/>(while (&lt; COUNT_1 (sslength dim))<br/>(setq ENTITY_1 (entget (ssname dim COUNT_1))) ;dim是选择集<br/>(setq dim (cdr (assoc -1 ENTITY_1)))<br/>(setq dim (vlax-ename-&gt;vla-object dim))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;dim是VLA图元名,无法循环回去了!!<br/>(vla-put-TextSuffix dim "qw")&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>(setq COUNT_1 (+ COUNT_1 1))<br/>&nbsp;&nbsp; )&nbsp; </p><p></p><p></p><p></p>

carrot1983 发表于 2008-1-29 11:34:00


;;练习:标注加前后缀 carrot1983 2008-01-29
(defun c:test (/ E I O SS)
(vl-load-com)
(if (setq ss (ssget '((0 . "DIMENSION"))))
    (progn
      (setq i 0)
      (while (< i (sslength ss))
(setq e (ssname ss i)
       o (vlax-ename->vla-object e)
       i (1+ i)
)
(vla-put-TextPrefix o "qz")
(vla-put-TextSuffix o "-hz")
      )
    )
    (alert "\n老大出什么事了!")
)
)

页: [1]
查看完整版本: 帮忙看看这段代码是什么错