明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2300|回复: 14

[源码] 转发Lee Mac源码里面发现的一个SSGET带提示的写法

  [复制链接]
发表于 2024-9-24 17:22:29 | 显示全部楼层 |阅读模式
本帖最后由 yanshengjiang 于 2024-9-24 17:24 编辑
  1.     (defun Lee_Mac_ssget ( msg filter / sel )
  2.         (setvar 'NOMUTT 1)
  3.         (princ msg)
  4.         (setq sel (vl-catch-all-apply 'ssget (list filter)))
  5.         (setvar 'NOMUTT 0)
  6.         (if (and sel (null (vl-catch-all-error-p sel)))
  7.             sel
  8.         )
  9.     )

在别的地方从来没有见过,所以转发过来,也是给自己备个忘。

"觉得好,就打赏"
还没有人打赏,支持一下
 楼主| 发表于 2024-9-24 18:11:19 | 显示全部楼层
原来早就有人转发过来了

;;--------------=={ SSget with propmt @Lee }==----------------;;
;;  Arguments:                                                ;;
;;  msg : message                                             ;;
;;  params : list of ssget opt & fil                          ;;
;;------------------------------------------------------------;;
;;  Returns:  ssname / exit : edit @ket to out                ;;
;;------------------------------------------------------------;;
;;  Usage:                                                                                                    ;;
;; (LM:ssget                                                                                                   ;;
;;                "\nSelect object <abc>"                               ;;
;;                (list (list (cons 0 "LWPOLYLINE"))))                  ;;
;;------------------------------------------------------------;;
;;(setq b (LM:ssget "\nSelect Block to Align: " '("_+.:E:S" ((0 . "INSERT")))))
 楼主| 发表于 2024-9-24 18:44:05 | 显示全部楼层
;(setq b (LM:ssget2 "\n选择地类符号: " '((0 . "INSERT"))))
(defun LM:ssget2        (msg filter / sel *error*)
  (defun *error* (m)
    (setvar 'NOMUTT 0)
    (princ)
  )
  (setvar 'NOMUTT 1)
  (princ msg)
  (setq sel (ssget filter))
  (setvar 'NOMUTT 0)
  (if (and sel (null (vl-catch-all-error-p sel)))
    sel
    (setvar 'NOMUTT 0)
  )
)
发表于 2024-9-25 21:35:24 | 显示全部楼层
我也期待有个好用的带提示的SSGET。给你们看几个样式,



原先SSGET的提示,固定的。                    楼主分享的,只在命令行         
   

***我觉得理想的提示,要跟随鼠标




跟随鼠标的提示我觉得才比较先进,不知道能不能实现。讨论讨论。








本帖子中包含更多资源

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

x
 楼主| 发表于 2024-9-24 18:15:13 | 显示全部楼层
yanshengjiang 发表于 2024-9-24 18:11
原来早就有人转发过来了

;;--------------=={ SSget with propmt @Lee }==----------------;;

(setq b (LM:ssget "\nSelect Block to Align: " ' ((0 . "INSERT"))))
发表于 2024-9-24 22:44:24 | 显示全部楼层
发表于 2024-9-24 23:15:35 | 显示全部楼层
来个SSGET带关键字的写法。论坛有一个,我感觉太复杂了
发表于 2024-9-24 23:19:41 | 显示全部楼层
感谢大佬分享
发表于 2024-9-24 23:34:06 | 显示全部楼层
qazxswk 发表于 2024-9-24 23:15
来个SSGET带关键字的写法。论坛有一个,我感觉太复杂了

我也想说这个,缺简洁的ssget关键字函数
 楼主| 发表于 2024-9-25 10:03:29 | 显示全部楼层
qazxswk 发表于 2024-9-24 23:15
来个SSGET带关键字的写法。论坛有一个,我感觉太复杂了

上面不就是吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-22 20:24 , Processed in 0.213694 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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