• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Выбор компонентов сборки с их подсветкой

Автор andr1987, 04.02.16, 10:48:02

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

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

andr1987

Добрый день!

Столкнулся с задачей подсветки компонента сборки, выбранного программно. Аналогичный функционал реализован в команде "Найти и заменить" библиотеки стандартных изделий. Условно говоря, в отдельном окошке появляется список компонентов (без повторений) - если количество компонентов одного вида, включенных в сборку, несколько, то по очереди каждый подсвечивать по кнопке.
Возможна ли реализация такого механизма? Если да, то буду очень благодарен за пример (желательно на C#).


#programmer

Ну, например так:

KompasObject ikompas = (KompasObject)Marshal.GetActiveObject("Kompas.Application.5");
IApplication app = ikompas.ksGetApplication7();
IKompasDocument3D ikdoc3d = (IKompasDocument3D)app.ActiveDocument;
ISelectionManager sm = ikdoc3d.SelectionManager;
IPart7 p7 = ikdoc3d.TopPart;
IParts7 pts7 = p7.Parts;
for (int i = 0; i <pts7.Count; i++)
{
      IPart7 p = (IPart7)pts7;
      if (p.Name == "SomeName")
      sm.Select(p);               
}
Для подсборок, конечно, выбор компонентов нужно делать рекурсивно.
+ Благодарностей: 1

andr1987