|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
20.10.2015, 00:02 | 1 | | #1 |
Как создать поле в Autocad при помощи VBA?
Минск
Регистрация: 27.02.2011
Сообщений: 169
|
||
Просмотров: 10806
|
|
||||
kefirrr, уехал на денек на Родину. Отдохнуть. С собой только айпад.
Завтра вернусь к рабочему месту вечерком, там и сброшу что-либо. Если не терпится, то на скринах с моего предыдущего поста должно быть все достаточно понятно. Там создается поле применительно к атрибутам динамического блока. |
||||
|
||||
kefirrr, Oleg15, что-то я забегался и подзабыл. Извиняюсь.
Прикрепляю видео с пояснением, код и сам автокад. https://www.youtube.com/watch?v=RUglFkd7EHo Код:
|
||||
|
||||
Регистрация: 07.12.2010
Уфа
Сообщений: 425
|
Добрый день!
Как вставить поле в таблицу? Поле это атрибут блока. Надо этот атрибут в виде поля записать в ячейку таблицы. Предложенное выше решение выдаёт ####. Регенерация не помогает. Но если зайти в ячейку, потыкать там мышкой, а потом нажать "Ок" и регенерировать, то тогда выдаёт правильное значение. |
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,589
|
А если внимательно прочитать
то окажется, что это не так. В рамках VBA, поле это просто заковыристо сформированная строка, а если копнуть глубже, то объект добавляемый в базу чертежа (типа линии или текста). Кто Вам мешает вставить эту строку в ячейку таблицы и вызвать регенерацию? Что останавливает? |
|||
|
||||
Регистрация: 07.12.2010
Уфа
Сообщений: 425
|
Вставляю в ячейку %<Ac......... + objectid атрибута + textstring (тут пишу по памяти, а так орфография и пунктуация правильная), но в ячейке появляется ####. Регенерация не помогает (делал пять раз подряд). Но помогает если зайти в ячейку, зайти в поле, ничего не менять, нажать "Ок", выйти из ячейки и сделать регенерацию.
|
|||
|
||||
Регистрация: 16.04.2009
Петрозаводск
Сообщений: 323
|
Коллеги, доброго времени суток.
Подскажите, а как избавиться от поля в мультитексте? Я получаю objMText.textstring мультитекста, а там нет кодов поля, лишь конечное значение. Пытался переписать objMText.textstring=myMText.textstring - не помогает. Предположил, что надо поковыряться в расширенных словарях данного мультитекста, там есть словарь "ACAD_FIELD". Возникла идея от него избавится, но как-то не получилось! Что не так делаю? Код:
|
|||
|
||||
Регистрация: 16.04.2009
Петрозаводск
Сообщений: 323
|
то же рычит...
в случаях erase или delete - говорит "на объект ссылаются другие объекты". а при remove говорит Цитата:
Еще нашел метод .fieldcode, он выдает весь текст с кодами, но записать вместо него без кодов не получается. |
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,589
|
|
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ACADVER (Системная переменная) | Makswell | Справочник команд | 19 | 13.10.2016 05:58 |
Как создать большую карту в AutoCAD 3d Map на основе существующей в автокаде? | SilvioManuel | Прочее ПО от Autodesk | 3 | 18.08.2014 14:51 |
AutoCAD Architechure 2012 - как создать собственную палитру и кинуть на нее блоки? | MaximuS_G | AutoCAD | 14 | 09.12.2011 23:00 |
Создать предмет при помощи поверхности Куна | Кетрин | AutoCAD | 69 | 26.01.2009 21:59 |