Как модифицировать графический интерфейс?

Автор catWithBottle, 14.03.19, 18:51:49

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

catWithBottle

Подскажите, как с помощью API осуществлять изменения графического интерфейса. (добавить убрать кнопку, редактировать панель инструментов)

PS

С помощью API ни как. Только вручную через контекстное меню на инструментальных панелях.

catWithBottle

Цитата: PS от 14.03.19, 19:27:02
С помощью API ни как. Только вручную через контекстное меню на инструментальных панелях.
Хорошо, а для чего существует интерфейс IProcessContextPanel?

DesignЯR

Для начало неплохо было бы указать версию Компаса и среду программирования.
В старом интерфейсе через настройки добавляете кнопки.
В новом через АПИ пишете свою библиотеку со своей панелью и со своими кнопками какими угодно на ней. На обработчики кнопок уже вешаете либо стандартные команды, либо свои (со своей панелью свойств). Тут как раз и произойдет знакомство с IProcess и всей канителью вокруг него.
На прилагаемой картинке я подключаю свою библиотеку и активирую свою Инструментальную Область. На ней есть стандартные Инструментальные панели и панель с моими командами. При нажатии  кнопки "Документ2D" Вылезла соответствующая вкладка на панели свойств (справа в 18.1 - удобнее чем раньше). На ней размещены кнопки с моими командами. Тут можно разместить и простые макросы и нормальные команды со входом в процессы, например создание стандартной линии или своего макрообъекта  с заданными параметрами (будет запущена новая панель свойств).
+ Благодарностей: 2

catWithBottle

Цитата: DesignЯR от 14.03.19, 22:49:35
Для начало неплохо было бы указать версию Компаса и среду программирования.
В старом интерфейсе через настройки добавляете кнопки.
В новом через АПИ пишете свою библиотеку со своей панелью и со своими кнопками какими угодно на ней. На обработчики кнопок уже вешаете либо стандартные команды, либо свои (со своей панелью свойств). Тут как раз и произойдет знакомство с IProcess и всей канителью вокруг него.
На прилагаемой картинке я подключаю свою библиотеку и активирую свою Инструментальную Область. На ней есть стандартные Инструментальные панели и панель с моими командами. При нажатии  кнопки "Документ2D" Вылезла соответствующая вкладка на панели свойств (справа в 18.1 - удобнее чем раньше). На ней размещены кнопки с моими командами. Тут можно разместить и простые макросы и нормальные команды со входом в процессы, например создание стандартной линии или своего макрообъекта  с заданными параметрами (будет запущена новая панель свойств).
Да, вы правы, последняя версия. Искренне благодарю за максимально подробное объяснение, вы сильно помогли. Не могли бы вы еще подсказать, где подключать библиотеку? Мы нашли информацию о "Менеджере библиотек", но, к несчастью, в новой версии нет возможности найти его. Куда был перенесен его функционал?
И если возможно, я был бы очень благодарен за исходники вашей библиотеки.

Подключать в меню Приложения --> Конфигуратор.
+ Благодарностей: 1

DesignЯR

Исходник во вложении ( архив из трех частей). Только сразу предупреждаю, что это костыль. Библиотека подготовлена к оптимизации, но не хватает времени. Часть функционала была перенесена в другие библиотеки, а кнопки не были удалены. Используйте для ознакомлением с кодом - а для работы нужно до(пере)делывать.
В качестве понятных примеров рекомендую ознакомиться с такими примерами из SDK (там все менее сумбурно):
Step2 - Пример создания библиотеки со своей Инструментальной панелью (состав панели описан в файле *.xml)
Step12-Пример создания пользовательской панели свойств (статическая)
Gayka- Пример создания макроэлемента с панелью свойств (в рамках процесса)
+ Благодарностей: 3

DesignЯR

+ Благодарностей: 2

DesignЯR

Подключать как на картинке.
При первом подключении библиотеки Компас должен быть запущен так : Правая кнопка мыши на ярлыке-> Запуск от имени администратора. Иначе может быть сообщение о ошибке подключения библиотеки ( бывало на Windows 7 и 8.1)
+ Благодарностей: 1