首页时代观察每日新知上网指南站长学院商务应用论坛 | 互助吧新发现专题下载网址工具 | 设为首页加入收藏
 当前位置:首页>电脑教室>图形图像>AutoCAD> 正文  登录 注册 个人空间

 网址导航,让您上网更方便! 更有实用查询工具!  
AutoCAD菜单的开发技术(2)
52net.com  最后更新 2007-03-12    
 
  文章导读:
    除了Windows标准菜单外,AutoCAD还提供了其它形式的快捷方式来执行命令,例如工具栏、图像菜单、屏幕菜单、快捷键等。菜单文件的其它区域定义了这些快捷方式。“***TOOLBARS”部分指定工具栏的缺省布局和内容,它包含菜单所定义工具栏的子菜单,如图6所示。 图像控件菜...
   

除了Windows标准菜单外,AutoCAD还提供了其它形式的快捷方式来执行命令,例如工具栏、图像菜单、屏幕菜单、快捷键等。菜单文件的其它区域定义了这些快捷方式。“***TOOLBARS”部分指定工具栏的缺省布局和内容,它包含菜单所定义工具栏的子菜单,如图6所示。

图像控件菜单主要用来当用户选择一个图形符号时提供图像,图像控件菜单通过在菜单文件中提供“***IMAGE”部分来定义。

“***SCREEN”部分标签表示AutoCAD屏幕菜单的开始。屏幕菜单部分控制屏幕菜单区域。缺省情况下,屏幕菜单是禁用的。通过选择“工具/选项/显示”上的“显示屏幕菜单”,可启用屏幕菜单。

菜单文件中标签为“***TABLET1”到“***TABLET4”的四个部分定义了一些菜单宏,这些菜单宏与指定区域的数字化仪选择相关。AutoCAD最多可将数字化仪的四个区域配置为命令输入的菜单区域。

状态行帮助信息是帮助支持的一个重要方面,当菜单项被选择时,在状态行中显示这些简单的描述性信息。“***HELPSTRINGS”部分中的帮助字符串菜单区域支持这种格式的帮助,如图7所示。

图7

AutoCAD支持用户定义的快捷键。“***ACCELERATORS”菜单区域定义了来自用户的快捷键。

三、建立自己的菜单

当AutoCAD提供的标准菜单不能满足用户需求时,我们可以通过修改菜单文件来开发自己的菜单。我们可以用修改ACAD.MNU文件的方法建立自己的菜单项。下面我们来制作一个最简单的菜单。

第一步:打开ACAD.MNU文件,在文件中输入如下字样:

 ***POP12
   [绘制]
   [直线] ^c^c^_line
   [圆] ^c^c_circle
   [文字] ^c^c_text

第二步:存盘并退出文本编辑器,然后进行AutoCAD绘图环境。

第三步:在AutoCAD的命令行中键入“MENU”命令,将出现“选择菜单文件”对话框。在“文件类型”下拉列表框中选择“菜单样板”文件类型,选中ACAD.MNU文件,单击“打开”按钮载入该文件。此时,程序弹出提示框,由于我们并没有对工具栏进行修改,所以单击“是”按钮继续载入ACAD.MNU文件。

这样,我们就建立了一个简单的菜单项(如图8所示),尽管很简单,但是基本说明定制菜单的方法,现在您可以试一试每个菜单的功能了!

图8

让我们回过头来看一下刚才添加的代码。“***POP12”这一行是菜单区域的区域名。ACAD菜单组中已经有11个菜单,所以我们将新建的菜单编号为12。为菜单区域编号不需要连续,只要不与前面的菜单区域重复就可以了。从[绘制]这一行开始的每一行都表示一个菜单项。每一个菜单项是菜单里的菜单标题,方括号内的内容称为菜单项标签,简称标签。在菜单项中的标签会显示在菜单栏中。接下来的三行都是菜单的菜单项。三行的结构相同,方括号内是菜单项的标题,方括号后的部分叫做菜单宏(Menu Macro),这部分是菜单命令的执行部分。

您可能发现了,菜单宏中的命令与在命令行中输入的命令行基本相同(如绘制直线命令line、画圆命令circle等),只是前面加了一些控制字符。其中“^”表示Ctrl键按下的状态,^C相当于按一次 组合键,即中断当前命令。连续两个“^C”可以保证菜单的命令一定能被执行。下划线“_”用于将其后的字符转换成AutoCAD命令和关键字。

菜单宏是与菜单项对应的命令序列,可以对菜单宏进行编程来实现复杂的功能。许多特殊字符也可以应用在菜单宏中实现一些系统功能,下表列出了可用于菜单宏的特殊字符。
=====================================================================
   字符 说明
=====================================================================
; 产生ENTER
^M 产生ENTER
^I 产生TAB
SPACEBAR 输入空格;菜单项中命令序列之间的空格等价于按SPACEBAR
\ 暂停以等候用户输入(不能用在快捷键部分)
- 转换AutoCAD命令及其后的关键字
延续菜单宏到下一行(如果是最后一个字符)
=* 显示当前顶层的图像、下拉菜单或快捷菜单
*^C^C 重复项的前缀
$ 加载菜单部分或输入条件DIESEL宏表达式($M=)的特殊字符
^B ^B切换捕捉开或关(CTRL B)
^C 取消命令(ESC)
^D 切换坐标显示开或关(CTRL D)
^E 设置下一个等轴测平面(CTRL E)
^G 切换栅格开或关(CTRL G)
^H 产生退格
^O 切换正交模式开或关(CTRL O)
^P 切换MENUECHO开或关
^Q 显示所有提示、状态列表和打印输入(CTRL Q)
================================================================

利用AutoCAD提供的特殊字符可以制作各种特殊效果的菜单。我们将前面介绍的POP12菜单区域稍作修改,制作一些特殊的菜单,如分隔线、子菜单、被禁用的菜单等。修改后的菜单代码如下:

 ***POP12
   [绘制]
   [直线(&L)\tCtrl L] ^c^c^_line
   [->圆] ^c^c_circle
   [R50圆] ^c^c_circle \50
   [<-R80圆] ^c^c_circle \80
   [--]
   [~文字] ^c^c_text

使用Menu命令重新载入ACAD.MNU菜单样板文件,可以发现我们自制的“绘制”菜单增加了快捷键、子菜单、分隔线和禁用菜单,如图9所示。

图9

在上面的代码中,“直线”菜单项增加了带下划线的菜单热键(L),还增加了快捷键CTRL L。它的标签由[直线]变成了[直线(&L)\tCtrl L]。其中“&”的作用是给“&”后的第一个字符加上下划线,并将其作为该菜单项的菜单热键;“\t”的作用是将其后的所有文字推向右边,即靠右对齐。菜单项“圆”的下面增加了两个子菜单。子菜单由一对特殊符号进行定义,符号“->”用在父菜单项标签的开头,表示这个菜单项含有子菜单;符号“<-”用在最后一个子菜单项标签的开头,表示这个菜单项是整个子菜单的最后一项。值得注意的是:这两个符号必须成对出现。AutoCAD会自动忽略不能与其它符号匹配的符号,这样“圆”菜单项也已经失去了原有的画圆功能。这是因为如果一个菜单项含子菜单,AutoCAD会自动忽略含该菜单项的菜单宏,这与Windows中的层叠菜单是相同的。菜单项“圆”的下面多了一条分隔线,这条分隔线是由两个连字符“[-]”产生的,分隔线不能被选中,其后的任何菜单宏都会被忽略。在一个菜单项的标签开始处加一个波浪线“~”就可以禁用该菜单项。“文字”菜单项就进行了这样的处理。被禁用的菜单项会变为灰色,不能被选中。当然,创建一个总是被禁用的菜单项是没有任何意义的,禁用符号通过都和AutoLISP语言的条件判断表达式组合使用,达到在特定状态下禁用特定菜单项的目的。例如在文本编辑器中,如果没有进行复制或剪切操作,那么粘帖菜单项就处于被禁用状态。

这个例子很简单,但是包括了最常用的几个标签控制字符的用法。AutoCAD提供的标签控制字符还有很多,下表显示了其它的标签控制符。
==============================================================
字符   说明
==============================================================
-- 下拉菜单或快捷菜单中的菜单项分隔符(使用时,不能包括其它任何字符)
延续宏到下一行(如果是最后一个字符)
-> 指出下拉菜单或快捷菜单具有子菜单
<- 指出子菜单中的最后一个下拉菜单项或快捷菜单项
<-<-... 指出子菜单中的最后一个下拉菜单项或快捷菜单项并且结束父菜单。(每个<-结束一级
父菜单)
$( 如果作为第一个字符,则使下拉菜单或快捷菜单项标签求DIESEL字符串宏的值
~ 禁用菜单项的前缀符
!. 给菜单项打上复选标记的前缀符
& 直接放在下拉菜单或快捷菜单标签中一个字符之前,把该字符指定义菜单的热键。例如, S&le则将字每a下显示一条下划线
/ 指定下拉菜单或快捷菜单标签的菜单热键,通常与&符号配合使用
\t 把标签中这两个字符右边的文件置于菜单的右侧


来源:不详

 
本站部分内容来源网络,若无意侵犯了您的权力,请速与我们联系!
 >> 在里搜索更多 AutoCAD菜单的开发技术(2) 文章
 >> 在里搜索更多 AutoCAD菜单的开发技术(2) 文章

    相关文章
·如何制作建筑效果图
·AutoCAD的三维拉伸
·如何通过配置加强AUTOCAD
·AutoCAD 设置技巧
·AutoCAD菜单的开发技术(1)
·结构设计师到底该如何利用
·Auto CAD如何快速变换图层
·CAD/CAM技术的现状
·用好AutoCAD的线型比例
·AutoCAD超级编辑
·AutoCAD应用技巧精选
·CAD小技巧多多
·CAD/CAE/CAM企业系统方案
·为DWG文件“减肥”
·AutoCAD2004命令别名 快捷
·AutoCAD 画图技巧

    文章搜索
  关键字:
  范  围:
 
    推荐文章
·AutoCAD应用技巧精选
·AutoCAD2000打印致命错
·CAD与其它软件数据交换
·AutCAD图形文件弄上网页
·AutoCAD直接距离法定点
·AUTOLISP程序设计技巧
·AutoCAD中标注文字与公
·给AutoCAD增加标注命令
    热点文章
·AutoCAD2000打印致命错
·AutoCAD的三维拉伸
·AutoCAD超级编辑
·如何制作建筑效果图
·AutoCAD 2002之图案填充
·CAD小技巧
·教你在cad中如何做出圆
·AutoCAD 水晶球渲染步骤
    

关于我们 | 免责说明 | 人才招聘 | 给我留言 | 联系我们 | 友情链接 | 网站地图
Copyright @ 2006-2008 52net.com. All rights reserved. 52net阶梯网 版权所有
京ICP备05070331号