sailor 发表于 2004-7-23 17:22:00

请教!怎样使ACAD中的命令不可用?比如LAYER命令?谢谢各位大侠了!!!

请教!怎样使ACAD中的命令不可用?比如LAYER命令?谢谢各位大侠了!!!

jx_lgq 发表于 2004-7-24 21:27:00

<P class=signature>virtual Acad::ErrorStatus


<P class=signature>removeCmd(


<P class=signatureIn>const char* cmdGroupName,


<P class=signatureInEnd>const char* cmdGlobalName);

sailor 发表于 2004-7-26 12:59:00

本帖最后由 作者 于 2004-7-26 13:35:04 编辑 <br /><br /> 能请<A name=37594><FONT color=#000066><B>jx_lgq</B></FONT></A>给做个例子吗(把line禁用了),俺是新手,有点不会用。谢谢啦!!!

zfbj 发表于 2004-7-27 09:35:00

在程序中加入下面的一句即可禁用LINE命令:


acedCommand(RTSTR, "undefine",


                                                                                                                                                                                               RTSTR, "line",


                                                                                                                                                                                                        RTNONE);


下面的语句则可恢复LINE命令的定义:


acedCommand(RTSTR, "redefine",


                                                                                                                                                                                               RTSTR, "line",


                                                                                                                                                                                                        RTNONE);


今天是直接写的,没调试,如果不行的话告诉我一声。

sailor 发表于 2004-7-27 13:31:00

谢谢<A name=38108><FONT color=#000066><B>zfbj</B></FONT></A>,可是这样禁用命令后,虽然输入LINE提示命令未定义,可在命令前加一个小点“.”即:“.line”就又可用了。不知道有没有什么办法把它彻底的禁止掉!谢谢啊

zfbj 发表于 2004-7-27 15:25:00

一般的用户根本不知道在前面加"."而调用该命令,而且这也是AutoCAD推荐使用的方法。


像你说的那样可能不好办,因为AutoCAD已经在命令解释器中定义了这个命令,我们无法修改命令解释器中的内容。

jx_lgq 发表于 2004-7-27 22:36:00

acedRegCmds-&gt;removeCmd("ACAD_MTEXT","MTEXT");


但是我也不知道如何找到使LINE命令失效的方法,因为找不到他的组名。


如果你能找到的话,回复一个啊
页: [1]
查看完整版本: 请教!怎样使ACAD中的命令不可用?比如LAYER命令?谢谢各位大侠了!!!