明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2825|回复: 11

[源码] 双击反应器

[复制链接]
发表于 2019-4-21 22:48 | 显示全部楼层 |阅读模式
本帖最后由 1291500406 于 2019-4-25 20:07 编辑

双击反应器
(vl-load-com)(if (member "acdblclkedit.arx" (arx))(arxunload "acdblclkedit.arx" nil))
(or *dblclkCircleReactor* (setq *dblclkCircleReactor* (VLR-Mouse-Reactor nil' ((:VLR-beginDoubleClick . dblclkedit2)))))
(defun dblclkedit2 (reactorObject point / b c doc owner p)(setvar "cmdecho" 0)  
(if (setq owner (nentselp (setq p (trans (car point) 0 1))))(progn(if (> (length owner) 2)(setq ent (last (last owner)))
(setq ent (car owner)))(sssetfirst nil)(redraw ent 4)(setq b (cdr (assoc 0 (entget ent))))
(setq c (cdr (assoc 66 (entget ent))))(setq doc (vlax-get (vlax-get-acad-object) "activedocument"))
(cond
((= b "DIMENSION")(vla-sendcommand doc "bbdimensionsssetfirs "))
((= b "IMAGE")(vla-sendcommand doc "bbimageCrop "))
((= b "TEXT")(vla-sendcommand doc "bbddedit "))
((= b "MTEXT")(vla-sendcommand doc "bbddedit "))
((= b "INSERT")(if (= c 1)(progn(vla-sendcommand doc "bbbeditname "))
(progn(vla-sendcommand doc "bbbeditname "))))
((= b "ATTRIB") (vla-sendcommand doc "bbbeditname "))
(T(vla-sendcommand doc "properties ")))(princ))))

(if (not *dblclkReactor*)(setq *dblclkReactor*(VLR-Mouse-Reactor nil'((:VLR-beginDoubleClick . dblclkedit1)))))(defun dblclkedit1(reactorObject point)
(if dblclk-edit(dblclk-edit point)))(defun dblclk-edit (dblclk_point / owner dblclk_etype p)(setq owner (nentselp (setq p (trans (car dblclk_point) 0 1))))
(if (and (= owner nil) (= 0 (getvar 'cmdactive))) (vla-sendcommand (vla-get-activedocument(vlax-get-acad-object)) (strcat  (rtos (car p) 2 3) "," (rtos (cadr p) 2 3) " bbgetpointmnu "))))
(defun c:bbddedit() (while  (setq tx(entsel "\n必强提示请选择文字:")) (command "._DDEDIT" tx "" ))(princ))
(defun c:bbimageCrop()(setq obj(vlax-ename->vla-object(car (entsel"必强提示:请选择图像"))))
(setq var_pts(vla-get-Coordinates(vlax-ename->vla-object(car (entsel"必强提示:请选择多边形")))))
(vla-ClipBoundary obj var_pts)(princ))
(defun c:bbdimensionsssetfirst ()(if (setq ss (ssget '((0 . "dimension"))))(sssetfirst nil ss))(princ))
(defun c:bbbeditname()(setq name (cdr (assoc 2 (entget(car(entsel "\n块编辑器:"))))))   (command "_bedit" name )(princ))

"觉得好,就打赏"
还没有人打赏,支持一下
 楼主| 发表于 2019-4-22 13:40 | 显示全部楼层
bai2000 发表于 2019-4-22 11:20
r "acdblclkedit.arx"  "bbdimensionsssetfirs " "bbimageCrop ""bbddedit ""bbdclickblkdialog "能发上来 ...

acdblclkedit.arx  cad自带的
发表于 2019-4-22 11:20 | 显示全部楼层
r "acdblclkedit.arx"  "bbdimensionsssetfirs " "bbimageCrop ""bbddedit ""bbdclickblkdialog "能发上来么?
 楼主| 发表于 2019-4-22 21:18 | 显示全部楼层
本帖最后由 1291500406 于 2019-4-22 21:48 编辑

没啥用,代码就是为了偷懒的,不想每次手动输入命令,用鼠标输入
发表于 2019-4-22 20:15 | 显示全部楼层
做啥用   
 楼主| 发表于 2019-4-28 16:02 | 显示全部楼层

大中华,你是男的女的,咋用女头像
发表于 2019-4-29 08:19 | 显示全部楼层
1291500406 发表于 2019-4-28 16:02
大中华,你是男的女的,咋用女头像

该用啥就用啥
发表于 2019-6-25 11:34 | 显示全部楼层
这个怎么使用啊,还有,想要把CAD默认的连续标注添加到双击反应器应该怎么弄?
发表于 2019-6-25 13:26 来自手机 | 显示全部楼层
反应器,还未曾涉猎,留爪备用
发表于 2021-6-11 17:11 | 显示全部楼层
2015开始还是2016开始,貌似这招就不香喽,不知道有法调整解决不
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-24 07:14 , Processed in 0.313670 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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