找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 7|回复: 0

[编程申请] 对单行文字内的数字进行递增或递减

[复制链接]
发表于 3 小时前 | 显示全部楼层 |阅读模式
悬赏20D豆未解决
本帖最后由 winner108 于 2026-1-25 17:02 编辑

  • ;;对单行文字内的数字进行递增或递减
  • (defun c:tt2 ()
  •   (xdrx_begin)
  •   (if (not (or (= #wzmode "+")(= #wzmode "-"))) (setq #wzmode "+"))
  •   ;(setq tf t)
  •   (while (and
  •            ;tf
  •            (xdrx_initssget (xdrx-prompt "[加模式(+)/减模式(-)]<退出>  <" #wzmode ">:" t)
  •              "+ -"
  •              ""
  •              ""
  •              ""
  •            )
  •            ;(setq ss (xdrx_ssget "_:e"))
  •            (setq ss (xdrx_entsel))
  •          )
  •     (setq tf1 (type ss))
  •     (cond
  •       ((= tf1 'STR)
  •        (cond
  •          ((= ss "+") (setq #wzmode "+" wz "+"))
  •          ((= ss "-") (setq #wzmode "-" wz "-"))
  •        )
  •       )
  •       ((= tf1 'list)
  •        (progn
  •          (setq edata (entget (car ent)))
  •          (setq numtxt (distof (cdr (assoc 1 edata))))
  •          (cond
  •             ((= #wzmode "+")
  •              (setq numtxt (+ numtxt 1.0))
  •             )
  •             ((= #wzmode "-")
  •              (setq numtxt (- numtxt 1.0))
  •             )
  •          )
  •          (setq numtxt (rtos numtxt))
  •          (setq edata (subst (cons 1 numtxt) (assoc 1 edata) edata))
  •          (entmod edata)
  •        )  
  •        ;(setq tf nil)
  •       )
  •     )
  •   )
  •   
  •   (xdrx_end)
  •   (princ)
  • )
  • 上述代码是简化版的,遇到的问题:不用(setq ss (xdrx_ssget "_:e")) 的原因是我需要有点选处坐标,以便后面判断点选的位置在单行文字中对应的是哪一个字符(这是后话,还未完成深化),所以改用(setq ss (xdrx_entsel)),但是xdrx_entsel不能传递关键字,请问我还如何实现能够连续的点击单行文字内数字进行递增或递减,并且在不退出的情况下,输入关键字调整递增或递减模式?

TT2-文字加减.lsp

1.13 KB, 下载次数: 0, 下载积分: D豆 -1 , 活跃度 1

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2026-1-25 20:33 , Processed in 0.177211 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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