Заказные Меню в AutoCAD, страница 8

***MENUGROUP=ACAD

***POP0         (and so forth...)

 ....

***POP6

ID_MnHelp   [Help]

ID_Contents [Contents]^C^C_HELP

ID_About    [About]^C^C_ABOUT

Пункт меню в частичном меню может изменяться, чтобы иметь дополнительный пункт меню, который ссылается на тэг в основном меню.

*** POP2

[Title2]

[ Отключить Содержание Справки] ^P (menucmd " Gacad. ID_Contents = ~ ") ^P

Этим способом, множественные частичные файлы меню и удельные основные файлы могут работать вместе. AutoCAD предписывает строгое определение группы меню так, чтобы никакие два меню не могли определять ту же самую группу меню. Пытается загружаться,  меню с противоречивой группой меню приводит к отмене запроса MENULOAD.

Абсолютная Ссылка на Опускающихся и Элементы(пункты) Подручного меню

В дополнение к ссылке на на пункт меню, Вы можете инициировать или дезактивировать пункт меню с Pn=xxx синтаксисом. Это - формат:

Pn.i=xxx

Pn определяет, что  активное сечение меню POPn (0 сквозь 16 имеет силу значения); i определяю номер пункта меню; и xxx (если существующий), определяет строку, определяющую действие.

Следующий пример использует AutoLISP menucmd функция, чтобы сослаться опускающийся или элемент(пункт) подручного меню. Поскольку файлы меню AutoCAD динамические (сквозь загрузка частичных меню), следующий синтаксис не будет вставлять все случаи(дела).

[ Отключить Строку Старый Путь] (menucmd " P1.2 = ~ ")

Этот синтаксис положился бы на локализацию пункта меню и не работал, если новый элемент(пункт) был вставлен в сечение POP1 автором меню или если новое опускающееся меню вставлено прежде POP1 командой MENULOAD.

Вы можете использовать Pn=xxx синтаксис от макрокоманды меню, если это следует эту команду $. Следующий пример отключает элемент(пункт) 4 в сечении POP3.

$P3.4 = ~

Следующий пример прибавляет галочку к элементу(пункту) 1 в сечении POP7.

$P7.1 =!.

Следующий пример удаляет любое отключение или символ метки от элемента(пункта) 1 в сечении POP7.

$P7.1 =

Нумерация Пункта меню консекутивна без отношения к иерархии файла меню; элемент(пункт) 1 - первый элемент(пункт), следующий заголовок.

*** POP5

[Помогите] Заголовку

[ Справка!] '? Элемент(пункт) 1

[Отмена] ^C^C^C Элемент(пункт) 2

[-] Элемент(пункт) 3

[Отмена] ^C^C_U Элемент(пункт) 4

[Восстановите] ^C^C_redo Элемент(пункт) 5

[-] Элемент(пункт) 6

[ - > Osnap] Элемент(пункт) 7

[Средний] средний Элемент(пункт) 8

Чтобы делать это облегчает за элемент(пункт), чтобы адресовать себя без отношения к локализации в иерархии меню, использовать эти формы:

$P@.@=xxx

Ссылается на ток(поток) или наиболее недавно выбранный пункт меню

$P@.n=xxx

Ссылается на элемент(пункт) n в токе(потоке) или наиболее недавно выбранное меню

Глава 4 - Заказные Пункты меню

 Опускающийся и Подручные меню

  Управление Дисплеем Меток Пункта меню

   Доступ AutoLISP, чтобы Маркировать Состояние

AutoLISP menucmd функциональные вводы $Pn=xxx командует строками, но без явления опережения $. Для этих функций, часть xxx строки команды может иметь частные значения.

Pn.i =?

Возвращает ток(поток) заблокированное и отмеченное состояние за точно установленный элемент(пункт) как строка (например, ~ за заблокированный элемент(пункт),!. За элемент(пункт) с галочкой, и " " за элемент(пункт), который не является ни недоступным из, ни отмеченным).

 Pn.i=#?

Возвращает тот же самый тип строки как описано для Pn.i =?, но с Pn.i = префикс. Это полезно вместе с формы, потому что фактическое меню и номер позиции возвращены.

Например, если пятый элемент(пункт) в сечении POP6 заблокирован, следование menucmd код возвращает следующие строковые значения.