当前位置: 主页 > 平面设计 > AutoCad自定义菜单文件(1)

AutoCad自定义菜单文件(1)

  • 2021-12-27
  • 来源/作者: ps.onegreen.org    / 佚名    
  • 9 次浏览

  34.3.1 实例1 创建新的菜单文件“user.mns”

  Step 1 定义菜单组

  (1) 打开记事本程序,创建一个新的文本文件。

  (2) 在文件中输入如下代码。

  //

  // Sample Menu File

  //

  ***MENUGROUP=USER

  即定义该菜单文件属于“USER”菜单组。

  Step 2 定义辅助菜单

  在上一步骤输入的代码后继续输入如下代码:

  ***AUX2

  // Shift + button

  $P0=SHORTCUT $p0=*

  该代码定义用户在使用Shift+右键时所调用的快捷菜单“SHORTCUT”。

  Step 3 定义下拉菜单和快捷菜单

  在上一步骤输入的代码后继续输入如下代码:

  ***POP0

  **SHORTCUT

  ID_SM [&Sample Menu]

  ID_S1 [&Polyline \tCtrl+3]^C^C_pline

  ID_S2 [&Array... \tCtrl+4]^C^C_array

  [--]

  ID_S3 [->Sub Menu]

  ID_S31 [Sub Menu1]^C^C

  ID_S32 [<-Sub Menu2...]^C^C

  [--]

  ID_S4 [Image Menu...]$I=USER.IMAGE_MENU $I=USER.*

  ID_S5 [~Disable Menu]^C^C

  ID_S6 [!.Checked Menu]^C^C

  ***POP14

  **PULL_DOWN

  ID_SM [&Sample Menu]

  ID_S1 [&Polyline \tCtrl+3]^C^C_pline

  ID_S2 [&Array... \tCtrl+4]^C^C_array

  [--]

  ID_S3 [->Sub Menu]

  ID_S31 [Sub Menu1]^C^C

  ID_S32 [<-Sub Menu2...]^C^C

  [--]

  ID_S4 [Image Menu...]$I=USER.IMAGE_MENU $I=USER.*

  ID_S5 [~Disable Menu]^C^C

  ID_S6 [!.Checked Menu]^C^C

  注意 上两部分代码分别定义了快捷菜单“SHORTCUT”和下拉菜单“PULL_DOWN”,这两部分定义的菜单项完全一样,不同之间仅在于菜单名称。

  这部分定义的菜单分别给出了菜单的加速键、级联子菜单以及菜单项的显示控制等功能的定义。

  Step 4 定义工具栏

  在上一步骤输入的代码后继续输入如下代码:

  ***TOOLBARS

  **TB_USER1

  ID_TbUser1 [_Toolbar("User Toolbars1", _Floating, _Show, 100, 100, 1)]

  ID_Pline [_Button("Polyline", "ICON_16_PLINE", "ICON_16_PLINE")]^C^C_pline

  ID_Array [_Button("Array", "ICON_16_ARRREC", "ICON_16_ARRREC")]^C^C_array

  ID_Image [_Button("Image", user16.bmp, user32.bmp)]$I=USER.IMAGE_MENU

  $I=USER.*

  **TB_USER2

  ID_TbUser2 [_Toolbar("User Toolbars2", _Floating, _Show, 200, 100, 1)]

  ID_Flyout [_Flyout("Flyout", "ICON_16_PLINE", "ICON_16_PLINE",

  _OtherIcon,USER.TB_USER1)]

  [--]

  [_Control(_Color)]

  [--]

  [_Control(_Layer)]

  以上代码定义了两个工具栏“TB_USER1”和“TB_USER2”。工具栏“TB_USER1”中包括三个按钮“Polyline”、“Array”和“Image”,其中“Image”按钮的图标资源为用户创建的两个位图文件“user16.bmp”和“user32.bmp”,并保存在AutoCAD的库搜索路径中。

  工具栏“TB_USER2”中引用“TB_USER1”来定义了一个弹出式工具栏,同时还定义了两个控件“Color”和“Layer”。

  Step 5 定义图像控件菜单

  在上一步骤输入的代码后继续输入如下代码:

  ***IMAGE

  **IMAGE_MENU

  [Nut Image]

  [user(s1)]^C^C

  [user(s2)]^C^C

  [user(s3)]^C^C

  [user(s4)]^C^C

  [user(s5)]^C^C

  [user(s6)]^C^C

  以上代码定义了一个图像控件菜单,其中所用到的幻灯片和幻灯片库的创建,请参见第31章。由于该定义仅出于演示的目的,因此并没有给出具体的命令序列,用户可根据需要来添加。

  Step 6 定义屏幕菜单

  在上一步骤输入的代码后继续输入如下代码:

  ***SCREEN

  **S

  [Mian Menu]^C^C^P(ai_rootmenus) ^P

  [Polyline ]^C^C_pline

  [Array... ]^C^C_array

  [Sub Menu ]$S=USER.SUBMENU

  [Image Menu...]$I=USER.IMAGE_MENU $I=USER.*

  **SUBMENU 2

  [Prev Menu]$S=

  [Sub Menu1]^C^C

  [Sub Menu2]^C^C

  以上代码定义了带有子菜单的屏幕菜单。

  Step 7 定义加速键

  在上一步骤输入的代码后继续输入如下代码:

  ***ACCELERATORS

  ID_S1 [CONTROL+"3"]

  ID_S2 [CONTROL+"4"]

  ["NUMPAD5"]@x^h

  ["NUMPAD6"]<0

  ["NUMPAD9"]<45

  ["NUMPAD8"]<90

  ["NUMPAD7"]<135

  ["NUMPAD4"]<180

  ["NUMPAD1"]<-135

  ["NUMPAD2"]<-90

  ["NUMPAD3"]<-45

  以上代码中除了定义“Pline”命令和“Array”的快捷键以外,还定义了扩展坐标输入,即数字键区作如下修改:5键输入@符号,其他数字键输入小于号(<)和该键位置在数字键区中表示的角度值。这样用户来输入相对极坐标时可利用数字键快速输入,例如极坐标:@50<45,用户只需按数字键区的5键、数字“50”和数字键区的9键即可。

  Step 8 定义菜单帮助

  在上一步骤输入的代码后继续输入如下代码:

  ***HELPSTRINGS

  ID_S1 [Creates a 2D polyline]

  ID_S2 [Creates multiple copies of objects in a pattern]

  ID_S31 [The sample 1 for Sub Menu]

  ID_S32 [The sample 2 for Sub Menu]

  ID_S4 [The sample for Imeage Menu]

  ID_S5 [The sample for Disable Menu]

  ID_S6 [The sample for Checked Menu]

  以上代码给出了每个菜单项相应的提示。

  Step 9 保存文件

  以“user.mns”为名保存该文件。

  说明 AutoCAD命令前加“_”是为了语言的兼容性。