На этом уроке мы научимся создавать кнопки для запуска своих программ, написанных на языке LISP. И рассмотрим мы это на примере программы “mp_kub”, созданной в предыдущем уроке: Пример простой программы на LISP.
Весь интерфейс программы Автокад, включающий в себя режимы рабочего пространства, ленту, панели инструментов, меню и т. д., храниться в стандартном файле адаптации acad.cuix. В Автокаде есть широкие возможности по изменению и настройки интерфейса под свои конкретные задачи. Все изменения, внесенные пользователем, сохраняются в основном файле адаптации и остаются неизменными при последующих запусках Автокад.
Кроме основного файла адаптации, Автокад позволяет загружать файлы частичной адаптации, в которых так же присутствуют лента, панели инструментов, меню и т. д. Файлы частичной адаптации позволяют нам переносить с одно компьютера на другой на другой не весь интерфейс, а только его часть.
И так в этом уроки мы рассмотрим следующее:
Как создавать файл частичной адаптации;
Как создавать в нем новую панель инструментов;
Как создавать кнопки для новых команд;
Как прописывать команды в кнопку;
Как создавать новое изображение кнопки.
Как размещать кнопку на панели.
Как на ленте создать новую вкладку.
Создание файла частичной адаптации.
Отрываем AutoCAD, на главном меню выбираем вкладку «Управление» и щелкаем на пункте «Пользовательский интерфейс»
Откроется окно «Адаптация пользовательского интерфейса».
Переходим на вкладку «Перевести» и щелкаем на кнопке «Создать новый файл адаптации»
Находим папку «MyLisp», в поле «Имя файла» вводим «mp_panel» и нажимаем «Сохранить».
Переходим на вкладку «Адаптация» и нажимаем на кнопку «Загрузить файл частичной адаптации».
Если у вас этой кнопки не видно, предварительно нажимаем на стрелки выделенные красным.
Находим папку MyLisp, выделяем файл «mp_panel» и нажимаем «Открыть».
AutoCAD загрузит новый файл частичной адаптации MP_PANEL (mp_panel.cuix).
Создание новой панели инструментов.
Щелкаем правой кнопкой мыши на пункте «Панели» и левой на «Новая панель инструментов».
Переименовываем вновь созданную панель на “mp_panel“ и нажимаем «Применить».
В рабочем окне появится новая панель (если вдруг вы ее не видите, значит она у вас сейчас находиться под окном «Адаптация пользовательского интерфейса»).
Создание кнопки.
Щелкаем по кнопке «Создание новой команды» (выделена синим).
В списке команд появится «Команда1». Выделите ее.
Справа в поле «Имя» напишите «Куб». В поле «макросы» — «^C^C_mp_kub». Вверху в поле «Значок» выберите подходящий значок для кнопки и нажимаем изменить.
Откроется окно «Редактор кнопок». В редакторе кнопок ставим галочку в поле «Cетка». Немного изменяем изображение кнопки (Мы можем полностью с нуля нарисовать изображение кнопки, предварительно нажав на кнопку очистить). Нажимаем сохранить.
Присваиваем новое имя (я дал имя mp_kub) и нажимаем «ОК».
При переносе нашей панели на другие компьютеры нам понадобиться переносит и файлы изображений кнопок. Поэтому давайте сохраним изображение нашей кнопки в папке «MyLisp». Для этого нажимаем на кнопку «Экспорт…».
Находим папку «MyLisp», в поле «Имя файла» вводим «mp_kup» и нажимаем «Сохранить». Далее закрываем Редактор кнопок.
Спускаемся в самый низ изображения кнопок и щелкаем по вновь созданному изображению кнопки.
Теперь в верхнем левом окне находим «mp_panel». В нижнем левом команду «Куб». Нажимаем на команду «Куб» и не отпуская мыши тащим ее на «mp_panel» и только там отпускаем кнопку мыши.
Если получилось, это будет выглядеть так:
Нажимаем «Применить» и наша кнопка появится на панели.
Добавляем нашу панель в ленту.
Нажимаем на плюсик напротив строки с надписью «Лента». Плюсик превратится в минус, «Лента» раскроется. Далее указатель мыши ставим на «mp_panel», нажимаем левую кнопку мыши и не отпуская тащим ее на строку «Панели» (справа от надписи должен появится треугольничек), и только там отпускаем.
Появится сообщение, в котором нажимаем на кнопку «Да»
Под строкой «Панели» появится строка «mp_panel».
Далее щелкаем правой кнопкой мыши на строке «Вкладки», и левой на «Новая вкладка»
Под строкой «Вкладки» появится строка «Новая вкладка». Переименуем ее в «New».
Указатель мыши ставим на «mp_panel», нажимаем левую кнопку мыши и не отпуская тащим ее на строку «New» (пока не появится треугольничек), и только там отпускаем.
Под строкой «New» появится строка «mp_panel».
Затем щелкаем на стрелке выделенной зеленым и выбираем «Все файлы адаптации»
Выделяем «Рисование и аннотации» и щелкаем на кнопку «Адаптация рабочего пространства».
Далее щелкаем на плюсике возле «Файлы частичной адаптации», затем на плюсиках возле «MP_PANEL» и «Лента» и ставим галочку в квадратике напротив «Вкладки» (выделен красным)
Справа в поле «Содержимое рабочего пространства», в самом низу, появится строка «New (группа: MP_PANEL)». Нажимаем на кнопку «Готово». Далее на кнопки «Применить» и «ОК».
На главном меню появится новая вкладка «New». Щелкните по ней.
Поставьте указатель мышки на панель, нажмите левую кнопку мыши и не отпуская перетащите панель в более удобное место.
Теперь, чтобы запустить вашу программу, вам не нужно вводить ее имя в командной строке. Достаточно нажать на любую из этих кнопок.
Панель я оставил видимой, для тех пользователей, кто привык работать в режиме «Классический AutoCAD» (там нет ленты).
Если после нажатия на кнопку в командной строке у вас появилась надпись «Неизвестная команда»
Это значит, что наша программа «mp_kub» еще не загружена. Для этого запустим Редактор Visual Lisp. Открываем в нем свою программу и нажимаем на кнопку загрузить, выделенную зеленным.
Возвращаемся в Автокад, щелкаем по кнопке. Теперь она должна работать.
В ближайших уроках мы рассмотрим, как сделать так, чтобы программы автоматически загружались в Автокад и еще много чего интересного.
И так, в этой уроке мы научились:
Создать свой файл частичной адаптации;
Добавлять новые панели инструментов;
Создавать кнопки для новых команд;
Прописывать команды в кнопку;
Создавать новое изображение кнопки.
Размещать кнопку на панели.
Создавать новую вкладку на ленте и загружать в нее панель.
Пишите в комментариях: все ли у вас получилось?; трудно ли было выполнить этот урок?; где у вас возникли трудности? Я с удовольствием отвечу на ваши комментарии.
Если вы хотите получать новости с моего сайта. Оформляйте подписку.
До новых встреч.
«Автор: Михаил Орлов»
прекрасно
сегодня я прошел 3-й урок.
спасибо, Михаил
Просто невероятно!
Создаю новую вкладку и перетаскиваю на нее панель. Но треугольничек справа не загорается((( в чем дело???
В дереве CUI файла есть две папки «Панели». Первая, которая находится на одном уровне с папкой «Лента». Она для создание панелей в рабочем режиме «Классический AutoCAD». Вторая папка находится внутри папки «Лента», там же где и папка «Вкладки». Именно из этой папке и нужно перетащить панель. Если ее там нет, то сначала перетащите ее из первой папки «Панели» во вторую папку «Панели».
я сделал свой профиль,сделал его текущим,при этом добавил свои кнопки,в настройках(профиль) я его сохранил сделал экспорт на флэшку, на другом компе сделал импорт и ничего кроме цвета рабочего экрана, даже лента не открылась.В чем дело? может надо было еще файл частичной адаптации подгрузить,который я сделал точно, как у Вас в уроке? подскажите как правильно перенести свои настройки на другой компьютор
Никогда не пробовал переносить с одного компьютера на другой весь интерфейс.
Всегда пользовался файлами частичной адаптации. Просто перенесите файл частичной адаптации на другой компьютер и загрузите его в AutoCAD.
Огромное спасибо!!!!!! Не знала с какой стороны подойти к лабораторке. Теперь и лаба сделана и панели создавать научилась. Очень понятно все написано!
Я из Болгарии. Прошу извинение за ошибок. Поздравления за этот сайт. Я думаю что знаю DCL, но не открыла как менять font в диалоговые окна, примерно на Courier New, только используя DCL, нет Open DCL. У Вас есть кокую нибудь информацию.
Спосибо
Изменить font в диалоговом окне DCL нельзя (нет такой возможности).
Здравствуйте, Михаил!
Спасибо за доступное введение в программирование для AutoCAD!
Скажите, пожалуйста, как расшифровывается приставка «mp_» в ваших примерах (в названиях функций, панелей…)?
Название команд может быть любым (за исключением использования уже существующих имен). Когда программ много начинается путаница какая команда в каком файле написана и к какому проекту принадлежит. Поэтому в разных проектах к названию команд, как правило, я добавляю префикс. В данном случаи «mp_» это «my programm».