明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2414|回复: 4

请帮忙改下程序:输入S后返回是我想要的结果

[复制链接]
发表于 2010-2-21 15:31:00 | 显示全部楼层 |阅读模式


;;;快速写单行字
(defun c:WS (/ odtsz wzgd)
(setvar "cmdecho" 0)
(command "_.undo" "E")
(setq odsty (getvar "textstyle")) ;;记录当前文本样式
(setq odtsz (getvar "textsize")) ;;记录当前文本高度
(command "layer" "m" "6文字层" "c" "3" "" "s" "6文字层" "")
(prompt "\n【提示】文字高度") (princ"(") (princ odtsz) (princ "):")
(initget "S")
(if(setq wzsd (getpoint "\n【提示<S>改文本高度】指定文字起始点:"))
(cond ((= wzsd "S")(c:WSGD))))
(setq wzgd odtsz)(command "REGEN" )
(prompt "\n【文字高度:") (princ"(") (princ wzgd) (princ ")】")
(setq XXWS (getstring "输入文字:"))
(command "TEXT" wzsd wzgd 0 XXWS)
(command "_.undo" "E")
(setvar "textsize" odtsz) ;;返回文本高度
(setvar "textstyle" odsty) ;;返回文本样式
(princ))

功能目的:输入命令后,点取一点,写文字。

程序执行到输入S以后,不能继续输入文字,出现如下错误:

【文字高度5.0)】输入文字:fdffa

找不到文字样式“5.000000000000000”。
; 错误: 函数被取消

输入样式名或 [?] <XXX>:

请帮忙改下程序:(就用当前的文字样式,不管它什么样式!)输入S后返回是我想要的结果:

能继续写字在指定地方

发表于 2010-2-21 20:42:00 | 显示全部楼层
试试看:
游客,本帖隐藏的内容需要发帖数高于 5 才可浏览,你当前发帖数只有 0

发表于 2010-4-27 10:59:00 | 显示全部楼层

试下

(defun c:WS (/ ODSTY ODTSZ OLDCMDECHO OLDLAYER WZGD WZGD_1 WZSD XXWS)
  (setq oldcmdecho (getvar "cmdecho"))
  (setvar "cmdecho" 0)
;;;  (command "_.undo" "E");_这个感觉没用吧 注释掉
  (setq odsty (getvar "textstyle"))
  ;;记录当前文本样式
  (setq odtsz (getvar "textsize"))
  ;;记录当前文本高度
  (princ (strcat "\n【提示】当前文字高度(" (rtos odtsz 2 0) "):"))
  (initget "S")
  (while (= (setq wzsd (getpoint "\n【提示<S>改文本高度】指定文字起始点:"))
     "S"
  )
    (progn
      (setq wzgd_1 (getint (strcat "\n请输入文字高度(" (rtos odtsz 2 0) "):")))
      (initget "S")
    )
  )
  (if wzgd_1
    (setq wzgd wzgd_1)
    (setq wzgd odtsz)
  )
  (command "REGEN")
  (princ (strcat "\n【文字高度" (rtos wzgd 2 0) ")】"))
  (setq XXWS (getstring "输入文字:"))
  (setq oldlayer (getvar "clayer")) ;_当前的图层
  (command "layer" "m" "6文字层" "c" "3" "" "s" "6文字层" "")
  (command "TEXT" wzsd wzgd 0 XXWS)
  (setvar "clayer" oldlayer) ;_设置到旧图层
;;;  (command "_.undo" "E");_这个感觉没用吧 注释掉
  (setvar "textsize" odtsz)
  ;;返回文本高度
  (setvar "textstyle" odsty)
  ;;返回文本样式
  (setvar "cmdecho" oldcmdecho)
  (princ)
)

发表于 2010-4-27 11:00:00 | 显示全部楼层

忘记用代码格式了...

 楼主| 发表于 2010-7-26 13:07:00 | 显示全部楼层

谢谢各位的热心帮助

 

 

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-2-27 17:11 , Processed in 0.203208 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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