- •Содержание
- •Основные принципы настройки
- •Основные возможности настройки
- •Организация программных и вспомогательных файлов
- •Коротко об организации файлов
- •Работа с несколькими конфигурациями
- •Хранение чертежей в нескольких папках
- •Настройка шаблонов Интернет-публикаций
- •Создание пользовательских команд
- •Описание внешних команд
- •Псевдоимена команд
- •Настройка типов линий
- •Обзор описаний типов линий
- •Создание простых типов линий
- •Текстовые объекты в пользовательских типах линий
- •Формы в пользовательских типах линий
- •Пользовательские образцы штриховки
- •Коротко об описании образцов штриховки
- •Образцы штриховки из прерывистых линий
- •Образцы штриховки из составных линий
- •Настройка интерфейса пользователя
- •Обзор диалогового окна "Настройка интерфейса пользователя"
- •Термины, используемые при настройке
- •Изменения в настройке
- •Обзор редактора настройки интерфейса пользователя
- •Фильтр отображения элементов настройки
- •Работа с файлами настройки
- •Основные сведения о файлах настройки
- •Перенос и передача настроек
- •Создание и загрузка частичного файла НПИ
- •Создание корпоративного файла НПИ
- •Команды настройки
- •Создание, редактирование и повторное использование команд
- •Имена команды "Найти" и строки поиска
- •Управление отображением имен команд
- •Создание изображений для команд
- •Создание подсказок в строке состояния
- •Создание макросов
- •Использование в макросах специальных управляющих символов
- •Пауза для пользовательского ввода
- •Поддержка иностранных языков в макросах
- •Повторение команд в макросе
- •Метод выбора объектов "Единственный"
- •Использование макроса для перестановки элементов интерфейса пользователя
- •Использование условных выражений в макросах
- •Использование AutoLISP в макросах
- •Настройка панелей инструментов
- •Создание и редактирование панелей инструментов
- •Добавление или замена элементов управления панели инструментов
- •Создание раскрывающихся и контекстных меню
- •Создание раскрывающегося меню
- •Создание контекстного меню
- •Создание подменю
- •Обращение к раскрывающимся и контекстным меню
- •Подстановка и вставка раскрывающихся меню
- •Задание клавиш быстрого вызова и временной замены
- •Создание операции при двукратном нажатии
- •Настройка кнопок мыши
- •Ввод координат в меню кнопок
- •Настройка элементов интерфейса предыдущей версии
- •Создание планшетных меню
- •Настройка кнопок планшета
- •Создание экранных меню
- •Создание меню мозаики изображений
- •Загрузка файла AutoLISP
- •Настройка рабочего пространства
- •Вопросы и ответы по настройке интерфейса пользователя
- •DIESEL
- •Настройка строки состояния
- •Системная переменная MODEMACRO
- •Присвоение значений MODEMACRO
- •Выражения DIESEL в макросах
- •USERS1-5 Каталог функций языка DIESEL
- •+ (сложение)
- •- (вычитание)
- •* (умножение)
- •/ (деление)
- •= (равно)
- •< (меньше)
- •> (больше)
- •!= (не равно)
- •<= (меньше или равно)
- •>= (больше или равно)
- •angtos
- •edtime
- •eval
- •getenv
- •getvar
- •index
- •rtos
- •strlen
- •substr
- •upper
- •Сообщения об ошибках языка DIESEL
- •Слайды и командные сценарии
- •Создание слайдов
- •Коротко о слайдах
- •Просмотр слайдов
- •Создание и просмотр библиотек слайдов
- •Создание файлов сценариев
- •Коротко о файлах сценариев
- •Вызов сценария при загрузке программы
- •Демонстрация слайдов с помощью сценариев
- •Введение в интерфейсы программирования
- •ActiveX Automation
- •Коротко об ActiveX
- •Запуск приложения из командной строки
- •Запуск приложения из меню или с помощью панели инструментов
- •AutoCAD VBA
- •Основные сведения о AutoCAD VBA
- •Использование приложений AutoCAD VBA
- •Автоматическая загрузка и выполнение проектов VBA
- •AutoLISP и Visual LISP
- •Коротко об AutoLISP и Visual LISP
- •Работа с приложениями AutoLISP
- •Автоматическая загрузка и выполнение процедур AutoLISP
- •Файл ACAD.LSP
- •Файл ACADDOC.LSP
- •MNL-файл и AutoLISP-функции для меню
- •Предотвращение ошибок AutoLISP при выполнении файлов автозагрузки
- •Функция S::STARTUP: выполнение после завершения инициализации чертежа
- •ObjectARX
- •Коротко об ObjectARX
- •Работа с приложениями ObjectARX
- •Обзор .NET
- •Формы и шрифты
- •Коротко о файлах форм
- •Создание файлов описаний форм
- •Описания форм
- •Коды длин и направлений векторов
- •Специальные коды
- •Коды 0, 1 и 2: Конец формы и управление режимом построения
- •Коды 3 и 4: Управление размером
- •Коды 5 и 6: Сохранение и восстановление позиции
- •Код 7: Субформа
- •Коды 8 и 9: Смещения по X-Y
- •Код 00A: Октантная дуга
- •Код 00B: Дробная дуга
- •Коды 00C и 00D: Дуги, заданные прогибом
- •Код 00E: Флаг вертикального текста
- •Описания текстовых шрифтов
- •Файлы-образцы
- •Расширенный одноштриховой Roman
- •Расширенный стандартный шрифт UNICODE
- •Описания больших шрифтов
- •Описание большого шрифта
- •Создание файла расширенного большого шрифта
- •Использование большого шрифта в чертежах
- •Использование большого шрифта для создания специальных символов
- •Описания шрифтов Unicode
- •Верхние и нижние индексы в SHX-файлах
- •Указатель
Создание подменю
Подменю создаются так же, как и меню.
В следующей таблице описаны буквенно-цифровые символы, которые можно использовать в редакторе настройки пользовательского интерфейса. Остальные специальные символы зарезервированы для дальнейшего расширения этого ряда.
Специальные символы для подменю |
|
|
Символ |
Описание |
Пример |
$( |
Вычисление в команде строкового |
|
|
макроса языка DIESEL (если |
|
|
последовательность $( стоит в |
|
|
начале строки). |
|
~Делает команду недоступной.
!.Помечает команду флажком.
&Размещенный перед каким-либо символом, указывает, что символ должен быть подчеркнут, а соответствующая ему клавиша является клавишей быстрого вызова для пункта меню.
О&бразец отображается в меню как "Образец" (с подчеркнутой буквой г ).
\t |
Весь текст, идущий после данной |
При нажатии "Справка"\tF1 |
|
комбинации, отодвигается и |
справка отображается в левой |
|
выравнивается по правому краю |
части раскрывающегося меню, а |
|
меню. |
при нажатии F1 - в правой. |
Создание подменю |
|
|
1 |
Выберите в меню "Сервис" "Настройка" |
"Интерфейс". |
2В редакторе настройки пользовательского интерфейса на вкладке "Настройка" в панели "Настройки в <имя файла> нажмите значок "плюс" (+) рядом с узлом "Меню". Выберите меню, куда требуется добавить подменю.
Создание раскрывающихся и контекстных меню | 115
3Нажмите на меню правую кнопку мыши. Выберите "Создать" "Подменю".
Новое подменю с названием "Меню1" располагается в нижней части меню, выбранного для добавления подменю.
4Выполните одно из следующих действий:
■Введите новое имя над текстом подменю "Меню1".
■Нажатием правой кнопки мыши выберите "Меню1". Выберите "Переименовать". Введите новое имя подменю.
5В панели "Свойства" выполните следующие действия.
■ В поле "Пояснение" введите текстовое пояснение для подменю.
6В панели "Список команд" перетащите команду, которую необходимо разместить под именем подменю в панели "Настройки в <имя файла>".
116 | Глава 4 Настройка интерфейса пользователя
7Таким же образом добавьте команды в список нового подменю, пока он не заполнится.
Нажмите ОК.
Обращение к раскрывающимся и контекстным меню
Включить или отключить отдельные пункты раскрывающихся и контекстных меню можно таким же образом, как и обычные подменю. Это называется адресацией в меню.
К пунктам раскрывающихся и контекстных меню можно обращаться двумя способами: относительно и абсолютно. При относительной адресации указываются группа настройки и код элемента. При абсолютной адресации указывается абсолютное положение пункта в иерархии меню. Рекомендуется использовать относительную адресацию, т.к. она по своей природе динамична и не зависит от текущего состояния меню.
Относительная адресация команд раскрывающегося и контекстного меню
Чтобы выполнить адресацию элемента раскрывающегося или контекстного меню на основании группы настройки и кода элемента, используйте функцию AutoLISP menucmd. С помощью следующего синтаксиса выполняется адресация элемента меню на основании кода элемента.
(menucmd "Gгруппа_меню.код_элемента=значение")
В следующем примере для отключения элемента меню ID_Line, который находится в группе настройки sample, используется синтаксис относительной адресации. Пункт меню можно одновременно сделать недоступным и пометить.
(menucmd "Gsample.ID_Line=~")
Если известно, что находится в основном файле НПИ, можно создать частичный файл НПИ с дополнительным элементом меню, который выполняет адресацию в основной файл. Таким образом, обеспечивается согласованность работы частичных файлов НПИ и файлов основного меню.
Создание раскрывающихся и контекстных меню | 117
Абсолютное обращение к раскрывающимся и контекстным меню
Включить или отключить отдельные пункты меню можно с помощью синтаксиса $P n = xxx. Для этого используется формат:
$Pn.i=xxx
Спомощью $ можно загрузить раздел меню; P n задает активный раздел меню (от 0 до 16); i задает номер пункта меню; xxx (если присутствует) задает недоступность или пометку.
Спомощью синтаксиса $P n= xxxв следующем примере помечается пункт 1 раздела
POP7.
$P7.1=!.
В следующем примере для выполнения адресации элемента раскрывающегося или контекстного меню используется функция AutoLISP menucmd. Следующий синтаксис нельзя будет применять во всех случаях, так как файлы настройки по своей природе динамичны (в результате загрузки частичных файлов НПИ).
(menucmd "P1.2=~")
Синтаксис основывается на заданном положении элемента меню и не работает в случаях, когда новый элемент меню подставлен перед разделом POP1 командой НПИЗАГР.
Несмотря на иерархичность меню, нумерация элементов меню последовательна.
При адресации элементов меню (независимо от их местоположения в иерархической структуре) можно пользоваться следующими формами:
$P@.@= xxx
Выполняет адресацию текущей или наиболее часто выбираемой команды.
$P@. n = xxx
Таким образом обеспечивается согласованность работы базового меню и фрагментов меню.
Доступ к состоянию пунктов из AutoLISP
Функция AutoLISP menucmd воспринимает строки команд $P n = xxx, но без начального символа $. Для этих функций элемент xxx может иметь специальные значения.
118 | Глава 4 Настройка интерфейса пользователя