明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 734|回复: 5

帮忙改一下文本前递增

[复制链接]
发表于 2020-10-26 09:57 | 显示全部楼层 |阅读模式
3明经币
首先感谢wxa123wl网友提供的源码,由于他的源码是框选后是从下到上递增的,我想改成从上到下递增,另外增加可以点选递增的方式,希望各位大神能帮我一下,谢谢!

附件: 您需要 登录 才可以下载或查看,没有账号?注册
 楼主| 发表于 2020-10-30 11:01 | 显示全部楼层
本帖最后由 xg2010 于 2020-10-30 15:01 编辑

谢谢大家。:D
回复

使用道具 举报

 楼主| 发表于 2020-10-30 15:34 | 显示全部楼层
感谢革天明老师的帮助,现将源码发出来,帮助更多的人,谢谢
(vl-load-com)
(defun C:YJ()
  (setq sz    (getint"输入起始整数: ")
         szdz  (getint"输入递增整数: ")
   )
   (if (null szdz)(setq szdz 1)) ;不输入递增数默认为1
   (if (null sz)(setq sz 1))     ;不输入起始数默认为1

(while T
  (setq ent (ssget ":S" (list (cons 0 "*text"))))
  (setq stnm   (ssname ent 0)
            stnn   (entget stnm)
            contt  (cdr(assoc 1 stnn))
            szct   (strcat (itoa sz)
                         (vl-string-left-trim " 0123456789" contt)
                    )
      )
      (entmod (subst  (cons 1 szct)
                      (assoc 1 stnn)
                      stnn
              )
      )
  (setq sz(+ sz szdz))
)
)
回复

使用道具 举报

 楼主| 发表于 2020-11-4 14:48 | 显示全部楼层
(vl-load-com)
(defun C:YJ()
  (setq sz    (getint"输入起始整数: ")
         szdz  (getint"输入递增整数: ")
   )
   (if (null szdz)(setq szdz 1)) ;不输入递增数默认为1
   (if (null sz)(setq sz 1))     ;不输入起始数默认为1

(while T
  (setq ent (ssget ":S" (list (cons 0 "*text"))))
  (setq stnm   (ssname ent 0)
            stnn   (entget stnm)
            contt  (cdr(assoc 1 stnn))
            szct   (strcat (itoa sz)
                         (vl-string-left-trim " 0123456789" contt)
                    )
      )
      (entmod (subst  (cons 1 szct)
                      (assoc 1 stnn)
                      stnn
              )
      )
  (setq sz(+ sz szdz))
)
)
回复

使用道具 举报

发表于 2020-11-4 15:06 | 显示全部楼层
(defun c:ttt()
(vl-load-com)
   (setq sz    (getint "\n输入起始整数: ")
         szdz  (getint "\n输入递增整数: ")
         stn   (ssget  (list(cons 0 "*text")))
         stnl  (sslength stn)
         n     0
         reclist nil
   )
   (if (null szdz)(setq szdz 1)) ;不输入递增数默认为1
   (if (null sz)(setq sz 1))     ;不输入起始数默认为1
   (repeat stnl  
      (setq Stnm(ssname stn n)
            inspnt(cdr(assoc 10 (entget stnm)))   
            reclist(cons (list (cadr inspnt) stnm) reclist)
      )
      (setq  n(1+ n))  
   )
   ;Y排序
   ;(vl-sort reclist '(lambda(e1 e2)(<(cadr(car e1))(cadr(car e2))  )))
   (setq  reclist(vl-sort reclist '(lambda(e1 e2)(>(car e1)(car e2))  ))) ;由下往上排序用 < 由上往下排序用 >
  
   ;递增
   (setq n 0)
   (foreach stna reclist
      (setq stnm   (cadr stna)
            stnn   (entget stnm)
            contt  (cdr(assoc 1 stnn))
            szct   (strcat (itoa sz)
                         (vl-string-left-trim " 0123456789" contt)
                    )
      )
      (entmod (subst  (cons 1 szct)
                      (assoc 1 stnn)
                      stnn
              )
      );更新
      (setq n(1+ n)  sz(+ szdz sz))
   )
)
回复

使用道具 举报

 楼主| 发表于 2021-12-15 00:30 | 显示全部楼层
已经修改,谢谢大家.
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-3 20:56 , Processed in 1.382598 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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