Author |
Topic |
|
mers
Russia
159 Posts |
Posted - 04/15/2005 : 16:37:46
|
Здравствуйте.
Проблема в следующем. на листе есть шейп. как программно получить ссылку на трафарет в котором он состоит?
т.е. вытащили мы объект из трафарета на лист, и появляется окно, в котором написано, что этот шейп из такого то трафарета, в этом трафарете столько то элементов, и они так-то называются.
если будет примерчик, буду очень благодарен, если к тому же он будет на C# благодарности не будет предела :) |
Edited by - mers on 04/15/2005 18:01:14 |
|
immortal
Russia
391 Posts |
Posted - 04/15/2005 : 18:04:28
|
свойство называется Mastrshape, но дело в том что имя мастер шейпа будет не то которое в стенсиле вы видите, а то которое вы видите при редактировании мастер шейпа через меню: Формат - Особый - Имя: если вы назначите тут имя которое совпадет с именем стенила то можно обращаться к нему с помощью Mastrshape наглядно можно посмотреть с пом. моего адд-она excel2visio.exe где при visio->excel ячейка shape и даст имя мастер-шейпа
визио 2003 форэвер
...а вобще-то я белый и пушистый. |
|
|
mers
Russia
159 Posts |
Posted - 04/20/2005 : 10:57:27
|
Вы немного не поняли. Как получить ссылку на мастер данного шейпа я знаю. А как получить ссылку на стенсил? т.е мне нужно следующее: вытаскиваю шейп на лист и появляется следующая информация: этот шейп находится в таком-то стенсиле(его название), в этом стенсиле столько-то шейпов(их число) и они так-то называются(названия)
но все равно спасибо :) |
|
|
mers
Russia
159 Posts |
Posted - 04/20/2005 : 11:48:07
|
даже, наверное, проще... нужно только, чтобы я при вытаскивании шейпа мог сказать из какого он стенсила. вообще, в визио, где-нибудь в свойствах шейпа это прописывается? т.е. каким образом связаны шейп и стенсил в котором он находится. |
Edited by - mers on 04/20/2005 11:49:27 |
|
|
Tumanov
Russia
1198 Posts |
Posted - 04/20/2005 : 19:33:16
|
Нет такой связи. Можно действовать только перебором. Если Вы только что положили мастер на страницу рисунка, значит трафарет еще открыт. Нужно перебирать все открытые документы, искать среди них трафареты, внутри каждого трафарета просматривать все мастер-шейпы и искать тот самый с нужным именем. Как только наткнулись на нужный, можно делать все остальное - считать шейпы, собирать названия и т.д. Если такой же мастер-шейп окажется сразу на нескольких трафаретах, то Вы так и не узнаете, откуда он был взят :( |
|
|
mers
Russia
159 Posts |
Posted - 04/21/2005 : 15:13:32
|
В конце концов пришел к такому-же выводу :) Делал именно перебором.
Всем спасибо. |
|
|
|
Topic |
|