题。 移到你的CAD目录下 本到acad.mnl。 二、自动加载自己编写的菜单:添加以下文镜絘cad.mnl 的工具條"
次开发的软件如南方CASS,那就要在CASS安装目录搜索了),除了注释,我们看到的第一句有用的话就 是“***MENUGROUP=ACAD”,这句话什么意思呢?顾名思义并结合注释我们晓得,这里是讲这是一个菜单 组“MENUGROUP”,菜单组的名字叫“ACAD”。其实,在AutoCAD这个环境里,可以加载多个菜单组,但是只能有一个 主体菜单,其他的叫局部菜单。主体菜单的加载命令是“MENU”,局部菜单的加载命令是“MENULOAD”。我们继续分 析ACAD.MNU文件,向下仔细看不难发现,此文件组织是按段组织的,每一段的开始都是以“***”开始后面注以段的关 键字标识。总体看来一般有这样几个段“***BUTTONS”、 “***AUX”、 “***POP”、 “***TOOLBARS”、 “*** IMAGE”、 “***SCREEN”、 “***TABLE”、“***HELPSTRINGS”、“***ACCELERATORS”等,它们分别代表定点设备 按钮菜单区域、系统定点设备菜单区域、菜单区域、工具栏定义区域、图像控件菜单区域、屏幕菜单区域、数字化仪 菜单区域、帮助文本区域、快捷键定义区域等。由于这里讲菜单和工具栏,则主角“***POP”、“***TOOLBARS”在此 潇洒登场。 我们来看“***POP”不难发现,除了“***POP0”之外,其余即是菜单栏里面的“文件”、“编辑”、“显示”菜单项 ,选取一段来做分析—— 令就是“_open”,其余的类似。ID项可以随便写,只要不与现有的重复,文显更是可以自由发挥,但是最好易记,后 面的命令就是你写的插件的命令了——这不,终于把执行命令和菜单项对应上了,下面我们来做一个测试,在 ACAD.MNU里面加上这样一段: 现我们自定义的菜单如图: 在命令栏输入命令“CXKZ”,则提示栏信息如下: 当然,输入此命令前要把你自己的插件加载进来。另外,以上方法讲的是修改主体菜单来实现命令与菜单的挂接,我 们还可以用局部菜单进行加载。流程如下:新建一文本文档如记事本,输入代码—— ***MENUGROUP=ACAD001 样可出现想要的效果。 _Toolbar”之后告诉你标题名称如“标注”_Floating意思是?????,再后面是_Hide意思是CAD启动时候此工具栏 是否隐藏,后面的坐标告诉你它基于屏幕的绝对坐标是多少。对于按钮,首先告诉你鼠标划过时候的提示信息如“线 性标注”,然后告诉你显示图标,这个图标在哪里找呢,Q了一下,原来一在搜索路径可以找到就行,二在同名的DLL 中找到也可以,如果是文件,则其后缀名是.bmp,如果是DLL,则是它的导出资源ID了,最后面即中括号之外的即是其 执行命令,呵呵,这里又将命令与工具栏按钮挂接上了。下面我们搞一个示例,在ACAD.MNU里面加上代码如下: “MENU”,重新加载ACAD.MNU,则出现效果如下: 点击“查”则命令就会执行,命令栏显示效果如图: 同时我们看下工具箱里面也加了一个工具条选项,如图: 这样一来,我们就实现了定制工具栏的效果。 他几个组如“***IMAGE”、“***HELPSTRINGS”、“ ***ACCELERATORS”我们可以如法炮制。 采用流行的XML语言来实现此一功能了,XML编辑好的菜单配置文件扩展名为.CUI,所以也许.MNU方式的菜单配置将会 被淘汰,不过据网友“飞诗”大侠说,桌子公司会考虑兼容性问题,将继续支持.MNU方案。 |
|
来自: 昵称10804835 > 《AutoCAD》