|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
VBA и LockDocument как заблокировать документ ?
Регистрация: 05.11.2014
Сообщений: 944
|
||
Просмотров: 2423
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Не очень понял, какие команды при работе не в текущем документе.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 05.11.2014
Сообщений: 944
|
Цитата:
Например Selection.Select Всё работает, но мелькает окно видимого документа и всё тормозит, потому что нет этого : https://help.autodesk.com/view/OARX/...E16BFDD&v=2024 |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
А может стоит открывать документ через ObjectDBX ? Ну или по крайней мере попробовать
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
просто для информации небольшой офтопик:
Когда в том же экселе (для которого VBA роднее некуда) работаем с группами ячеек типа операций сортировки или изменения диапазона: Если не сделаешь перед этим документ и лист активным, то результаты могут быть самые плачевные - от артефактов накладывания изображений разных листов до падения экселя в целом. Но там можно в коде "замораживать" перерисовку приложения, невидимо для пользователя временно переключить книгу и лист и потом обратно все вернуть. Тогда работает стабильно. |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
разве? Блокировка - это когда во избежание конфликтов одновременных записей и чтений одного ресурса в памяти разными процессами вводится механизм "притормаживания" выполнения остальных процессов, не успевших первыми заблочить разделяемый ресурс. В данном случае разделяемым ресурсом является БД чертежа - и блокировка вводится для сохранения целостности и связанности БД чертежа.
----- добавлено через ~1 мин. ----- p.s. На форуме Аутодеска человек уже 20 лет ждет ответа на этот вопрос) |
|||
![]() |
|
||||
Никак. А даже если бы такая возможность была, то это никак не увеличило бы быстродействие. В VBA блокировка происходит автоматически (как и в VisualLisp)
----- добавлено через ~4 мин. ----- Цитата:
----- добавлено через ~7 мин. ----- Нет конечно.
__________________
Сообщество программистов Autodesk в СНГ - техническая поддержка |
||||
![]() |
|
||||
СЦБ Регистрация: 09.03.2006
Сообщений: 89
|
Цитата:
Примерно так: Код:
И для каждой версии Autocad она своя, что не добавляет удобства, зато работает намного быстрее, чем открывать файл. |
|||
![]() |
|
||||
Регистрация: 05.11.2014
Сообщений: 944
|
Без этого всё работает в10 раз медленнее, с блокировкой проблем нет.
Только в активном документе, в неактивном не происходит. Цитата:
Да, конечно. Для этого оно и создано. И справке написано что нужно его использовать для этого. ----- добавлено через ~2 мин. ----- Не вариант, слишком ограничено. |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
|
|||
![]() |
|
||||
Цитата:
Вот описание lockDocument в ObjectARX: https://help.autodesk.com/view/OARX/...R__ACHAR__bool Для AutoCAD .NET API оно еще короче и без расшифровки: https://help.autodesk.com/view/OARX/...t_LockDocument Конечно, т.к. происходит временная активация неактивного документа. P.S.: Всё остальное из вашего "опровержения" я не буду комментировать - нет вижу смысла тратить своё время... ----- добавлено через ~55 мин. ----- Цитата:
Что касается временной блокировки изображения, то для этой цели в ObjectARX есть следующие функции: acedUpdateDisplayPause - блокировка/разблокировка обновления дисплея acedIsUpdateDisplayPaused - проверка статуса блокировки обновления дисплея acedUpdateDisplay - обновление дисплея Аналога в VBA нет. В AutoCAD .NET API аналога тоже нет, но можно вызвать через P/Invoke
__________________
Сообщество программистов Autodesk в СНГ - техническая поддержка Последний раз редактировалось Александр Ривилис, 25.04.2024 в 18:50. |
||||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Конкретный документ регламентирующий классификацию высот деревьев. | m.marin | Поиск литературы, чертежей, моделей и прочих материалов | 5 | 31.03.2023 15:01 |
Ищу документ с рекомендациям по величинам рисок болтовых соединений в конструкциях опор ЛЭП | Ifclissium | Поиск литературы, чертежей, моделей и прочих материалов | 0 | 07.08.2019 09:59 |
Какой документ в Беларуси регламентирует защитный слой для дорожных плит? | petia | Железобетонные конструкции | 0 | 18.11.2015 10:09 |
Нужны ли исполнительные схемы как подтверждающий документ при демонтаже металлоконструкций | Wintersson | Поиск литературы, чертежей, моделей и прочих материалов | 11 | 17.02.2014 19:22 |
Есть ли такой нормативный документ? | Eugene84 | Поиск литературы, чертежей, моделей и прочих материалов | 9 | 04.12.2010 23:30 |