[CDR X6] Проблема выбора фигур при Separate

lipatkin

Топикстартер
12 лет на форуме
Сообщения
409
Оценка реакций
89
Всех приветствую!
Столкнулся с такой проблемой: Беру объект с эффектом Contour, сепарирую и не могу получить доступ к получившемуся объекту. Т.е. к Control Shape доступ еcть, а к тому, что было ContourGroup — нет.
Код:
If sH.Effects(1).Type = cdrContour Then
       Set tmp = sH.Effects(1).Contour.ContourGroup
       tmp.CreateSelection
       tmp.Separate
       tmp.CreateSelection ' ошибка, не выбирает
endif
Причем, подобный код работает с эффектом Extrude
Код:
If sH.Effects(1).Type = cdrExtrude Then
        'sH.Effects(1).Extrude.ExtrudeGroup.Selected = True
        Set tmp = sH.Effects(1).Extrude.ExtrudeGroup
        tmp.CreateSelection
        tmp.Separate
        tmp.CreateSelection ' все выбирается
endif
Как выбрать то, что получилось после сепарирования контура?
 

Karatau

Участник
Сообщения
56
Оценка реакций
14
Я в таких случаях сильно не разбираюсь. Просто переношу объект на новый слой, сепарирую его там, потом уже выделяю все на этом новом слое, дальше можно по выбору: или работать с ним на этом слое или засунуть все в ShapeRange и вернуть в рабочий слой. Вспомогательный слой при этом удаляется.
 

_MBK_

Пикирующий бомбардировщик
12 лет на форуме
Сообщения
25 154
Оценка реакций
8 529

lipatkin

Топикстартер
12 лет на форуме
Сообщения
409
Оценка реакций
89
Ёшкин кот, точно!
Надо весь эффект:
Код:
 Set tmp = sH.Effects(1).Separate
А не саму группу:
Код:
 Set tmp = sH.Effects(1).Contour.ContourGroup
tmp.Separate
Разницы по результатам действий нет, но во втором случае ссылка на объекты не сохраняется.