明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1987|回复: 7

[求助][分享]学习修改编号

[复制链接]
发表于 2010-6-15 18:10:00 | 显示全部楼层 |阅读模式
本帖最后由 crazylsp 于 2011-4-21 09:51 编辑

; 实际作图时制图后,经过审核,

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2010-6-15 18:51:00 | 显示全部楼层
为何要重复100次?
 楼主| 发表于 2010-6-15 19:37:00 | 显示全部楼层
它每次只能修改选择集中第一个图名,ssname 0 这一个,所以让这个选择集多次重复,100次以内足够可以搞定
发表于 2010-6-15 22:07:00 | 显示全部楼层

用WHILE不行吗?

;更改
(defun c:mi ()
 (if (= (setq content1 (getvar "USERS1")) "") (setvar "USERS1" (setq content1 "N4")))
 (if (setq userenter (getstring (strcat "\n输入以前的编号<" content1 ">")))
  (setvar "USERS1" (setq content1 userenter))
  (setq userenter content1)
 )
 (if (= (setq content2 (getvar "USERS2")) "") (setvar "USERS2" (setq content2 "N3")))
 (if (setq userenter (getstring (strcat "\n输入现在的编号<" content2 ">")))
  (setvar "USERS2" (setq content2 userenter))
  (setq userenter content2)
 )
 (setq p1 (getpoint "\n pick: "))
 (setq p2 (getpoint "\n pick: "))
 (while (setq ss   (ssget "w" P1 P2 (list(cons 0 "TEXT")(cons 1 content1))))
  (setq ent0 (entget (ssname ss 0)))
  (entmod (subst (cons 1 content2) (assoc 1 ent0) ent0))   
 )
)

 楼主| 发表于 2010-6-17 09:56:00 | 显示全部楼层
谢谢版主了,又学习新知了。现在不会出现参数类型错误了 lselsetp nil,问题还是“上次输入”的还是要重新输入, 不过也好。
发表于 2010-6-17 13:39:00 | 显示全部楼层

试了一下,不知怎么的,这个程序好像不能达到楼主的要求。

 楼主| 发表于 2010-6-18 15:30:00 | 显示全部楼层
本帖最后由 crazylsp 于 2011-4-21 09:21 编辑

楼上的原因是因为字符后面有空格,输入时要输空格,如图示,这个问题我已修改好了,重新上传了文件,增加了显示框.

发表于 2010-6-18 20:22:00 | 显示全部楼层

这样写就可以输入空格了,而且可以默认上次的输入了。

(defun c:mi ()
 (if (= (setq content1 (getvar "USERS1")) "") (setvar "USERS1" (setq content1 "N4")))
 (if (= (setq userenter T (getstring (strcat "\n输入以前的编号<" content1 ">"))) "")
  (setvar "USERS1" (setq content1 userenter))
  (setq userenter content1)
 )
 (if (= (setq content2 (getvar "USERS2")) "") (setvar "USERS2" (setq content2 "N3")))
 (if (= (setq userenter T (getstring (strcat "\n输入现在的编号<" content2 ">"))) "")
  (setvar "USERS2" (setq content2 userenter))
  (setq userenter content2)
 )
 (setq p1 (getpoint "\n pick: "))
 (setq p2 (getpoint "\n pick: "))
 (while (setq ss   (ssget "w" P1 P2 (list(cons 0 "TEXT")(cons 1 content1))))
  (setq ent0 (entget (ssname ss 0)))
  (entmod (subst (cons 1 content2) (assoc 1 ent0) ent0))   
 )
)

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

本版积分规则

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

GMT+8, 2024-10-2 06:31 , Processed in 0.201897 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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