明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 424|回复: 5

[提问] 出现参数类型错误提示,请指点!

[复制链接]
发表于 2018-10-9 10:27 | 显示全部楼层 |阅读模式
(defun c:tt (/ newtx V1 n nme oldtx V3)
  (setvar "cmdecho" 0)
  (if (= TEXT0 "")
    (setq TEXT0 "(-0.050)")
  )
  (setq newtx (getstring (strcat "\n请输入文本<" TEXT0 ">:")))
  (if (= newtx "")
    (setq newtx TEXT0)
    (setq TEXT0 newtx)   
  )
  (if (= TEXT0 "")
    (setq newtx "(-0.050)")
  )
  (prompt "\n选择文本(支持标注(非天正),单、多行文本):")
  (setq newtx (cons 1 newtx))
  (setq V1 (ssget))
  (setq n 0)
  (command "chprop" V1 "" "C" 2 "")        ;改黄色
  (if (/= V1 nil)
    (while (< n (sslength V1))
      (setq nme (ssname V1 n))
      (setq oldtx (assoc 1 (entget nme)))
      (setq V3 (entget nme))
      (entmod (subst newtx oldtx V3))
      (entupd nme)
      (setq n (+ n 1))
    )
  )
  (princ)
)
出现如下提示:
错误: 参数类型错误: stringp nil
请各位路过的大神给指点指点!谢谢!

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2018-10-9 10:51 | 显示全部楼层
...(= TEXT0 "")...

此时 TEXT0 未赋值应是 nil
下同

建议改用 Ustr 自定义函数
(参考老帖)
 楼主| 发表于 2018-10-9 11:13 | 显示全部楼层
Andyhon 发表于 2018-10-9 10:51
...(= TEXT0 "")...

此时 TEXT0 未赋值应是 nil

未赋值,if认定条件为非空。一开始我是按nil指定,但执行直接回车的空文本时就出问题了。

Ustr自定义函数?能否给个地址?
发表于 2018-10-9 12:01 | 显示全部楼层
(if (not TEXT0 )
    (setq TEXT0 "(-0.050)")
  )
发表于 2018-10-9 12:44 | 显示全部楼层
  1. (defun c:lxy (/ ss str)
  2.         (if (not str )
  3.     (setq str "(-0.050)")
  4.   )
  5.         (setq str (getstring (strcat "\n请输入文本<" str ">:")))
  6.         (prompt "\n选择文本(支持标注(非天正),单、多行文本):")
  7.         (setq ss (ssget '((0 . "*TEXT,DIMENSION"))))
  8.         (foreach s (lxy-pickset->list ss)
  9.                 (if (= (cdr (cadr (entget s))) "DIMENSION")
  10.                         (Vlax-Put-Property (Vlax-Ename->Vla-Object s) 'TextOverride str )
  11.                         (Vlax-Put-Property (Vlax-Ename->Vla-Object s) 'TextString str )
  12.                 )
  13.                 (Vlax-Put-Property (Vlax-Ename->Vla-Object s) 'Color 1 )
  14.         )
  15. )
 楼主| 发表于 2018-10-9 14:46 | 显示全部楼层
血司 发表于 2018-10-9 12:01
(if (not TEXT0 )
    (setq TEXT0 "(-0.050)")
  )

非常感谢!多谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-11 10:33 , Processed in 0.157049 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表