明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1498|回复: 7

[提问] 求助:怎么用宏实现判断和执行

[复制链接]
发表于 2013-10-13 21:53 | 显示全部楼层 |阅读模式
    大家都知道CAD里的CTRL+1,可以判断执行“properties”和“propertiesclose”两个命令,CAD里面的快捷键“CTRL+1”对应的宏是$M=$(if,$(and,$(>,$(getvar,opmstate),0)),^C^C_propertiesclose,^C^C_properties) ,由于我是个菜鸟,看不太懂,但我感觉应该是通过判断系统变量来执行不同的命令。
      最近在制作一些CAD工具条时,也想模拟“CTRL+1”,想让一个工具条的按钮的宏实现两个命令的判断执行,比如我想制作一个工具按钮实现执行判断CAD是否已经加载老虎板王(结构专业绘图用的一个插件),如果已加载就执行命令“BWQ”,如何没有加载就执行命令“BW”。各位大神给点指导吧?我是菜鸟,谢谢!
发表于 2013-10-13 22:48 | 显示全部楼层
(if (= (type C:BWQ) 'SUBR) (C:BWQ) (C:BW))
 楼主| 发表于 2013-10-14 09:30 | 显示全部楼层
ZZXXQQ 发表于 2013-10-13 22:48
(if (= (type C:BWQ) 'SUBR) (C:BWQ) (C:BW))

谢谢ZZXXQQ指导,我尝试你给的意见,但是好像有问题,命令行提示:
(if (= (type C:BWQ) 'SUBR) (C:BWQ) (C:BW)) ; 错误: no function definition: C:BW
不知为什么
发表于 2013-10-14 23:02 | 显示全部楼层
微笑忘记过去 发表于 2013-10-14 09:30
谢谢ZZXXQQ指导,我尝试你给的意见,但是好像有问题,命令行提示:
(if (= (type C:BWQ) 'SUBR) (C:BWQ) ...

就是没定义这个函数。
 楼主| 发表于 2013-10-15 13:16 | 显示全部楼层
ZZXXQQ 发表于 2013-10-14 23:02
就是没定义这个函数。

但是在CAD命令行里直接输入BW是可以加载老虎板王(结构专业的一个插件)的啊
 楼主| 发表于 2013-10-15 19:32 | 显示全部楼层
谁能给点意见呢?我是菜鸟,见笑了
 楼主| 发表于 2013-10-16 19:35 | 显示全部楼层
顶起啊,怎么没人指导一下呢
发表于 2013-10-16 23:17 | 显示全部楼层
微笑忘记过去 发表于 2013-10-15 13:16
但是在CAD命令行里直接输入BW是可以加载老虎板王(结构专业的一个插件)的啊

那就先加载试试
(if ((if (= (type C:BWQ) 'SUBR) (C:BWQ) (progn (load "bw") (c:bw)))
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-6-2 04:53 , Processed in 0.163374 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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