zhengjian211 发表于 2014-1-16 23:43:43

修改天正文字失败,请教原因

代码如下,运行后无任何反应
(defun C:qm ()
(vl-load-com)
(setq ent (entsel "\n请选择源文字:"))
(setq ob (vlax-ename->vla-object (car ent)))
   (vlax-dump-object ob)
(setq newstring (getstring "\n输入新的文字内容\n"))
(setq entype (cdr (assoc 0 en_text_data)))
(COND
    (
   (= entype "TCH_TEXT")

   (vlax-put-property ob 'Text "newstring")
    )
)
)

ZZXXQQ 发表于 2014-1-17 08:04:38

本帖最后由 ZZXXQQ 于 2014-1-17 08:12 编辑

(vlax-put-property ob 'Text "newstring")
改成
(vlax-put-property ob 'Text newstring)
试试

要不用下面的程序试试:(defun C:qm ()
(while (and
   (setq ent (entsel "\n请选择源文字:"))
   (setq ent (entget (car ent)))
   (wcmatch (cdr(assoc 0 ent)) "*TEXT")
   (setq newtxt (getstring "\n输入新的文字内容\n")))
(entmod (subst (cons 1 newtxt) (assoc 1 ent) ent))
)
(princ)
)

mmmmmm 发表于 2014-1-17 11:04:08

变量en_text_data没定义

zhengjian211 发表于 2014-1-17 11:05:54

谢谢楼上
(vlax-put-property ob 'Text "newstring")
改成
(vlax-put-property ob 'Text newstring)
依旧无效

您提供的修改组码的办法已经试过,会导致cad崩溃

wharan 发表于 2024-10-28 23:31:26

修改这一句即可(setq entype (cdr (assoc 0 (entget (car ent)))))
页: [1]
查看完整版本: 修改天正文字失败,请教原因