Контекстные меню отображаются в месте расположения курсора при нажатии правой кнопки указывающего устройства. Набор предлагаемых функций зависит от того, в какой области экрана находится курсор, а также от других факторов (наличие выбранного объекта, выполняемая команда и т.п.). Для отображения контекстных меню можно также использовать сценарии.
В контекстно-зависимых меню при нажатии правой кнопки мыши отображаются параметры, относящиеся к текущей команде или выбранному объекту.
Для ссылок на контекстные меню, используемые в текущей ситуации, используются псевдонимы. В редакторе настроек пользовательского интерфейса псевдонимы дожлны подчиняться соглашениям об именовании. Например, для контекстного меню “Меню по умолчанию “ в разделе "Псевдонимы" панели "Свойства" отображается следующая информация:
POP501, CMDEFAULT
POP0. Псевдонимы для контекстно-зависимых меню должны иметь номера от POP500 до POP999.Следующие псевдонимы зарезервированы для внутреннего использования в программе:
Для контекстного меню "Объектная привязка" должен быть назначен псевдонимПсевдонимы в программе для контекстных меню |
|
---|---|
Псевдоним |
Описание |
РУЧКИ |
Определяет контекстное меню выделенной ручки (нажмите правую кнопку в области рисования при выборе ручки на объекте). |
CMDEFAULT |
Определяет контекстное меню режима по умолчанию (нажмите правую кнопку мыши в области рисования, если не активна ни одна команда и не выбран ни один объект). |
CMEDIT |
Определяет контекстное меню режима редактирования (нажмите правую кнопку мыши в области рисования, если не активна ни одна команда, не выбран ни один объект и ни одна ручка). |
CMCOMMAND |
Определяет контекстное меню командного режима (нажмите правую кнопку мыши в области рисования, если команда активна). В дополнение к содержимому меню CMCOMMAND в это меню вставляются параметры команды (ключевые слова в квадратных скобках). |
ПРИВЯЗКА |
Определяет меню объектной привязки (нажмите клавишу SHIFT и нажмите правую кнопку мыши в области рисования). |
CMEDIT и CMCOMMAND могут быть сделаны контекстно-чувствительными. Помимо содержимого меню CMEDIT при выборе одного или нескольких указанных типов объектов в меню добавляется меню соответствующего объекта (свое для каждого типа). Для объектов меню используется одно из следующих соглашений по именованию: OBJECT_имя
Контекстные менюOBJECTS_имя
OBJECT_имя, если несколько объектов - меню OBJECTS_имя. Если меню OBJECT_имя недоступно, программа использует меню OBJECTS_имя (если оно существует).
Если выбран один объект определенного типа, используется менюИмя объекта - это имя объекта в формате (DXF™) во всех случаях, за исключением вставки объекта. В следующей таблице содержатся имена объектов для блоков, динамических блоков и внешних ссылок.
Имена объектов для вставленных объектов |
|
---|---|
Имя объекта |
Описание |
BLOCKREF |
Вхождение блока без атрибутов |
ATTBLOCKREF |
Вхождение блока с атрибутами |
DYNBLOCKREF |
Вхождение динамического блока без атрибутов |
ATTDYNBLOCKREF |
Динамическая ссылка на блоки с атрибутами |
ССЫЛКА |
Внешняя ссылка |
Например, для поддержки объектной контекстной команды для одного или нескольких выбранных вхождений блоков добавьте в панели "Свойства" на вкладке "Настройка" в редакторе настройки пользовательского интерфейса следующие свойства:
Свойства для объектов контекстного меню вхождений блоков |
||
---|---|---|
Элемент панели свойств |
Описание |
Пример |
Имя |
Строка, используемая только в редакторе НПИ, в пользовательском интерфейсе эта строка не отображается. |
Меню объектов блоков |
Описание |
Описание элемента, не отображается в пользовательском интерфейсе. |
Контекстное меню объектов блоков |
Псевдонимы |
Указывает псевдоним для контекстного меню. Нажмите кнопку [...], чтобы открыть диалоговое окно "Псевдонимы". Каждый псевдоним в файле НПИ служит программной ссылкой на контекстное меню и должен быть уникальным. |
POP512,OBJECTS_BLOCKREF |
Код элемента |
Метка, уникально определяющая контекстное меню. |
PM_0021 |
CMEDIT, меню CMCOMMAND может содержать контекстную информацию. Меню с именем COMMAND_имя добавляется к меню CMCOMMAND. Текст имя_команды может принадлежать любой команде AutoCAD, в том числе любой пользовательской или команды стороннего приложения.
Как и меню-ВСТАВИТЬ), необходимо присвоить этому меню имя COMMAND_-ВСТАВИТЬ.
Во многих случаях перед командой можно ввести дефис; при вводе команды с дефисом вместо диалогового окна отображаются запросы для данной команды. При создании контекстно-зависимого меню для команды, предусматривающей отображение запросов вместо диалогового окна (например,Создание контекстного меню (Процедура)
Процедура создания контекстного меню команд (Процедура)
Процедура создания контекстного меню объектов (Процедура)