自己纠结了几天,还是发个帖求高手帮忙
我想写这样两个lisp就是,一个命令比如TT,就能出现几个选择的值1,xxx 2 xxx 3 xxx,我通过选择1,2,3就能选择输入XXX的文字内容,(字体TSSD_REIN字高300,输入文字的点为鼠标随便单击的点),另外就是想把50-45-50,7-10-6,等大量这样的字符串分解成50 45 50,等等,但文字个位和十位不能打断
;写字
;写字 明经 ZZXXQQ 2011.10.15
(defun c:tt ()
(setvar "CMDECHO" 0)
(initget "1 2 3 ")
(if (and (setq k (getkword "\n1=And,2=Or,3=Xor :"))
(setq pt (getpoint "\n插入点 :"))) (progn
(command ".TEXT" "S" "TSSD_REIN" pt 300 0)
(cond
((= k "1") (command "And"))
((= k "2") (command "Or"))
((= k "3") (command "Xor"))
)
))
(setvar "CMDECHO" 1)
(princ)
)
;串转表
;串转表明经 ZZXXQQ 2011.10.15
(defun strlst (str fg)
(setq temp (list) ttt "" i 1)
(repeat (strlen str)
(if (/= (setq st (substr str i 1)) fg)
(setq ttt (strcat ttt st))
(setq temp (append temp (list ttt)) ttt "")
)
(setq i (1+ i))
)
(append temp (list ttt))
)
;(strlst "50-45-50" "-")
,太感谢你了 好像不行,1谢 2谢 3 你,想选1就输入谢, 第二个怎么会是参数太少 改一下文字样式没有问题呀!
(command ".TEXT" "S" "Standard" pt 300 0)
页:
[1]