|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
На каком лайоуте находится выбранный блок?
Украина
Регистрация: 07.02.2007
Сообщений: 222
|
||
Просмотров: 11439
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,372
|
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 07.02.2007
Украина
Сообщений: 222
|
Цитата:
Цитата:
Цитата:
Поняв буду рыть в этом направлении, мне правда бы в VBA но попробую разобраться |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Код:
Код:
Код:
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
DonVik, Я с VBA не дружу
![]() Ну а установить переменнную CTAB можно и в VBA. *** Размышления Через SendCommand можно из VBA послать в активный документ на выполнение и строчку(ки) на лисп. Перевести AcadBlockReference VBA в ename и (или) vla-object неверное можно через ObjectID
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 07.02.2007
Украина
Сообщений: 222
|
Цитата:
Цитата:
Вот ща попробую получить обьект примером Крыса, а потом уж твоим примером слинять на нужный Лайоут ) |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Ну еще если можно в VBA "выковырять" метку примитива (это та, что хранится в 5 поле), то ее можно преобразовать в ename черех лисп-функция handent
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
DonVik,
Сначала (vl-load-com)! (один раз за сеанс) Код:
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,372
|
Вроде так будет на VBA:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
когда то ту мне подсказали сделать определение так
Dim oLayout As AcadLayout Dim oID As Long Set oLayout = Acdoc.Layouts("Model") (ну а думаю любой из списка) oID = oLayout.Block.ObjectID If ssetObj.Item(v).OwnerID = oID Then End If |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,372
|
Стоп. Xdata тут ни при чем.
У тебя вообще, указатель на вхождение блока получен? И на вхождение ли? Проверь значение obj.ObjectName.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Я взял первый попавшийся код на VBA. Блок выделяешь рамочкой. Код:
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Болеем за наших на Олимпиаде | T-Yoke | Разное | 472 | 28.04.2009 17:40 |
Помогите доделать программу добавления объектов в блок | МишаVBA | Программирование | 1 | 20.05.2006 01:04 |