AutoCad菜单文件的类型、结构和使用
2006-04-02 09:45:51 来源:WEB开发网34.1.1 菜单文件简介
菜单文件用于定义菜单,AutoCAD系统中所使用的菜单均保存在相应的菜单文件中。AutoCAD中的菜单是人机交互的主要方式,并且具有几种不同的形式,即菜单区域。在菜单文件中对以下几种菜单区域的功能和外观进行了定义:
(1) 定点设备按钮菜单
(2) 下拉菜单和快捷菜单
(3) 工具栏
(4) 图像控件菜单
(5) 屏幕菜单
(6) 数字化仪菜单
(7) 帮助字符串和工具栏提示
(8) 键盘加速键
在AutoCAD启动时,系统会自动装入菜单文件ACAD.MNC(或ACAD.MNS、ACAD.MNU)。用户可以根据需要通过修改菜单文件来定制菜单,也可以创建自定义的菜单文件。
34.1.2 菜单文件的类型
在AutoCAD 2002系统中,可以看到如下几种类型的菜单文件,具体内容见表34-1。
表34-1 菜单文件类型说明
文件类型 | 说明 |
*.MNU | 样板菜单文件(文本文件),记录着菜单的功能和结构。 |
*.MNC | 编译后的菜单文件(二进制文件),可被AutoCAD直接使用,包含定义菜单功能和外观的命令字符串和菜单语法。 |
*.MNR | 菜单资源文件(二进制文件),包含由菜单使用的位图(.BMP)。 |
*.MNS | 菜单源文件(文本文件,由AutoCAD生成) |
*.MNT | 菜单资源文件。在*.MNR文件无效(例如,只读)时生成该文件。 |
*.MNL | 与菜单配套的 AutoLISP 程序。这些文件包含由菜单文件使用的 AutoLISP 表达式。当加载同名的菜单文件时,这些文件也载入内存。 |
MNS文件是ASCII文件,最初与MNU文件相同。用户在AutoCAD界面中修改菜单文件的内容后(如修改菜单栏),MNS文件也被修改。MNS文件不能直接为AutoCAD使用,而是需编辑为同名的MNC文件。
每当AutoCAD编译一个MNC文件后,便会生成一个菜单源文件(MNR文件),该文件包含菜单中要用到的位图。
生成MNS文件后,如果修改了MNU文件,必须重新加载MNU文件以便AutoCAD生成新的MNS和MNC文件,确认所做的修改。
用户可直接对其中文本格式的菜单文件进行编辑,以实现对菜单的定制。当然,前提是用户应对菜单文件的结构和格式有着充分的了解。
34.1.3 菜单文件的结构
AutoCAD采用层次结构来管理菜单文件,首先菜单文件按其功能的不同分为几个部分,每个部分中都包含菜单项,它为与菜单选项相关的外观和操作提供指示。菜单文件的各部分用部分标签来标识,其格式为:
***section_name
表34-2中列出了各个部分标签及其说明。
表34-2 部分标签及说明
部分标签 | 说明 |
***MENUGROUP | 定义菜单文件组 |
***BUTTONSn | 定义定点设备按钮功能 |
***AUXn | 定义系统定点设备菜单 |
***POPn | 定义下拉菜单和快捷菜单 |
***TOOLBARS | 定义工具栏按钮功能 |
***IMAGE | 定义图像控件菜单 |
***SCREEN | 定义屏幕菜单 |
***TABLETn | 定义数字化仪菜单 |
***HELPSTRINGS | 定义菜单项和工具栏按钮的提示信息 |
***ACCELERATORS | 定义加速键 |
菜单文件中各部分中的第二层结构用**标识,第二层结构下则为菜单项的具体定义。
菜单文件中的注释行以“//”为标识,菜单编译器将忽略“//”开始的行。
注意 菜单文件不要求包括所有的菜单部分,而只需要适用于应用程序的菜单部分。因此用户在编写菜单文件时,可以将菜单划分为几个小菜单文件,以便按需加载或卸载,使开发和维护工作更加容易。
34.1.4 菜单文件的加载
1. 基本菜单与局部菜单
在AutoCAD中加载菜单文件时,分为使用基本菜单和局部菜单的两种情况。基本菜单是菜单界面的基础,如果用户将某个菜单文件作为基本菜单加载,则系统自动取消原有的菜单文件,即新的基本菜单将替换原来的菜单。
加载基本菜单的方法为:
命令行:menu
调用该命令后,系统弹出“Select Menu File(选择菜单文件)”对话框,提示用户选择要加载的菜单文件。
局部菜单可以与基本菜单一起使用,即用户加载局部菜单时,原有菜单并不发生变化。使用局部菜单可使用户在菜单栏上增加或重新调整菜单。加载局部菜单后,该菜单所定义的全部菜单区域都被载入AutoCAD 且都可以使用,但下拉菜单并不直接显示出来,需要用户使用菜单命令,用AutoLISP将它们插入到菜单栏中。
加载局部菜单的方法为:
菜单:【Tools(工具)】→【Customize(自定义)】→【Menu…(菜单)】
命令行:menuload
调用该命令后,将弹出“Menu Customization(菜单自定义)”对话框,如图34-1所示。
在该对话框中,用户单击Browse...按钮,弹出“Select Menu File(选择菜单文件)”对话框,选择需加载的菜单文件并返回。这时,“File Name(文件名称)”编辑框中将显示出将被加载的菜单文件名称,用户单击Load按钮后,该文件的组名将出现在“Menu Groups(菜单组)”列表框里,即该菜单文件被加载到系统中。
与基本菜单不同的是,局部菜单还可以根据需要进行卸载。卸载局部菜单不会影响到其他未卸载菜单的使用。
卸载局部菜单的方法为:
菜单:【Tools(工具)】→【Customize(自定义)】→【Menu…(菜单)】
命令行:menuunload
调用该命令后,将弹出与图34-1完全相同的“Menu Customization(菜单自定义)”对话框。用户在“Menu Groups(菜单组)”列表框里选择需卸载的菜单项,然后单击Unload按钮即可进行卸载。
当用户退出AutoCAD时,AutoCAD记录基本菜单的名称、最多24个局部菜单(由它们的菜单组定义)的名称和最多24个当前菜单栏中存在的菜单,并在下一次启动时加载该菜单文件。这确保AutoCAD界面在各任务期间保持不变。
2. 菜单文件加载过程
如果用户使用对话框来选择需要加载的菜单文件,系统将根据用户所选择的菜单文件类型进行如下操作:
(1) 如果用户选择了MNC文件,则系统直接加载它。
(2) 如果用户选择了MNS文件,则系统在同一目录查找与其同名的MNC文件。如果找到该文件就加载它,否则系统将编译MNS文件来生成MNC文件并加载它。
(3) 如果用户选择的是MNU文件,则系统将其编译成MNC和MNS文件,并加载MNC文件。
(4) 无论采用上述何种方式,系统都在加载MNC文件后,查找相应的LISP菜单文件(MNL文件)。如果找到该文件,执行文件中的AutoLISP表达式。
当系统变量FILEDIA设为0时,用户需要在命令行中指定要加载的菜单文件。这种情况下AutoCAD将按下面的顺序查找、加载菜单文件:
(1) 根据搜索路径搜索源菜单文件(MNS文件)
如果找到了MNS文件,AutoCAD在同一目录查找编译后的同名菜单文件(MNC文件)。如果找到同名的MNC文件,而且该文件的日期比相应的MNS文件要晚,则AutoCAD加载该文件。否则AutoCAD编译MNS文件,在同一目录中生成新的MNC文件,并加载它。
如果没有找到MNS文件,AutoCAD根据搜索路径查找编译后的同名菜单文件(MNC文件)。如果找到该文件,加载它。
如果既没有找到MNS文件,也没有找到MNC文件,AutoCAD将根据搜索路径查找同名的菜单样板文件(MNU文件)。如果找到了文件,将其编译成MNC和MNS文件,加载MNC文件。
如果没有找到上述任一文件,AutoCAD给出提示信息,并提示使用其他菜单文件名。
(2) 加载MNC文件后,AutoCAD查找LISP菜单文件(MNL文件)。如果找到该文件,执行文件中的AutoLISP表达式。
- ››文件夹复制 (win&linux可)
- ››文件上传下载
- ››AutoCAD WS for iPhone, iPod toch, and iPad
- ››AutoCAD三维建模系列教程:拉升、倒角、并集的应用...
- ››AutoCAD三维建模系列教程:拉升、复制移动制作木梯...
- ››AutoCAD三维建模系列教程:拉升、移动、复制的应用...
- ››文件管理系统(JQuery插件+Ajax)
- ››AutoCAD 2011新功能教程:曲面命令创建楼房
- ››AutoCAD渲染教程:镜面的反射渲染技巧
- ››文件存储站的完整思路和资源
- ››文件读写 CFile
- ››文件泄密 诺基亚将推 S40 触控屏手机
赞助商链接