找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1677|回复: 6

[求助] [求助]:高手们帮忙看下以下源码,我想按空格键退出WHILE循环,不知怎么做

[复制链接]

已领礼包: 987个

财富等级: 财运亨通

发表于 2009-4-28 16:17:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
(defun c:plgj ()
  (setq sn (entsel "\n选择文字"))
  (setq        sb (car sn)
        p1 (cadr sn)
        txtbasepoint (cdr (assoc 10 (entget sb)))
        p2 t
        i  1
  )  
  (while (and (< i 9) p2)
    (command "copy" sb "" txtbasepoint pause "")
        (setq txt (entlast)
          txt_list (entget txt)
          txtbasepoint (cdr (assoc 10 txt_list))
    )
    (setq sb txt)
    (setq old_wbnr_list (assoc 1 txt_list))
    (cond ((= i 1) (setq new_wbnr_list (cons 1 "DN25")))
          ((or (= i 3) (= i 2)) (setq new_wbnr_list (cons 1 "DN32")))
          ((= i 4) (setq new_wbnr_list (cons 1 "DN40")))
          ((and (>= i 5) (<= i 8))
           (setq new_wbnr_list (cons 1 "DN50"))
          )
    )
    (setq txt_list (subst new_wbnr_list old_wbnr_list txt_list))
    (entmod txt_list)
    (setq i (1+ i))
  )
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 6637个

财富等级: 富甲天下

发表于 2009-4-28 17:46:39 | 显示全部楼层
(setq sn (entsel "\n选择文字"))

您给个调试用文件,才好 选择文字 呀

(SETQ EN (GRREAD T 1 0))
您这个 en 变量并未被使用, 有何作用?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 987个

财富等级: 财运亨通

 楼主| 发表于 2009-4-28 20:56:19 | 显示全部楼层
(SETQ EN (GRREAD T 1 0))已经删除.本来想在COPY命令中输入空格,来退出循环,就是没法实现.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6637个

财富等级: 富甲天下

发表于 2009-4-29 08:17:46 | 显示全部楼层
还是没能厘清您的 思路?
退出循环 应是有解啦 ....
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 987个

财富等级: 财运亨通

 楼主| 发表于 2009-4-29 09:05:29 | 显示全部楼层
我的思路是这样的,按上面的程序,必须循环八次才能退出。但是我有时候需要循环的次数小于八次,因此我想在达到需要循环的次数后,按空格键退出循环。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6637个

财富等级: 富甲天下

发表于 2009-4-29 09:10:24 | 显示全部楼层
...达到需要循环的次数...
那么就在 达到需要循环的次数 后
(setq i 9) or (setq p2 nil)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 987个

财富等级: 财运亨通

 楼主| 发表于 2009-4-29 11:27:23 | 显示全部楼层
解决了,谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 02:56 , Processed in 0.195078 second(s), 43 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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