Альтернатива - переключится на другой документ, а этот закрыть.
Александр Ривилис, а Вам не кажется странным, что метод есть, а использовать его нельзя?Его (как я понимаю) использовать можно, но (!!!) не с активным документом. В AutoCAD'е аналогично. Закрывать активный документ - это тоже самое, что пилить сук на котором сидишь. Это я так шучу.
Закрывать активный документ - это тоже самое, что пилить сук на котором сидишь. Это я так шучу.
В AutoCAD'е аналогично.
И вот обломчик...Так чего же обломчик, если ты можешь переключится на предыдущий проект перед тем как закрывать активный.
Цитата: Александр Ривилис от 17-03-2016, 08:19:07Угу. Т.е. закрыть можно, но достаточно извращенным способом, зависящим от версии AutoCAD. При этом определённые вещи в AutoCAD работать не будут. Всё это называется zero document state
В AutoCAD'е аналогично.
Да, ладно?
Ну тогда ждите. Возможно у Виктора есть альтернативное решение.Нет, альтернативные решения мне не встречались.
Думаю это просто как то связанно с архитектурой API, и исторически так сложилось, что нельзя.В AutoCAD это однозначно так. Он изначально был однодокументным до версии 2000 и этот режим сохранён в нём до сих пор.
Кстати, если бы ты пользовался поиском, то возможно нашёл и проверил бы такой вариант: http://thebuildingcoder.typepad.com/blog/2012/12/closing-the-active-document.html
Справедливости ради хочу заметить, что мне тоже не понятно решение запретить закрывать активный документ.
Кстати, если бы ты пользовался поиском, то возможно нашёл и проверил бы такой вариант: http://thebuildingcoder.typepad.com/blog/2012/12/closing-the-active-document.html
обязательно должен использоваться сторонний макрос и файл проектаМакрос не обязательно. нет ничего такого в макросах, чего нельзя было бы добиться полноценной надстройкой. Макрос просто приведен в качестве примера. А так ничто не мешает вам поместить этот код в полноценную надстройку. Файл проекта да, обязателен, так как именно в этом и состоит суть: открыть какой то файл проекта, перейти на него, и закрыть нужный. Правда можно ведь просто создать новый файл проекта, а не открывать уже существующий.
Макрос не обязательно. нет ничего такого в макросах, чего нельзя было бы добиться полноценной надстройкой. Макрос просто приведен в качестве примера. А так ничто не мешает вам поместить этот код в полноценную надстройку. Файл проекта да, обязателен, так как именно в этом и состоит суть: открыть какой то файл проекта, перейти на него, и закрыть нужный. Правда можно ведь просто создать новый файл проекта, а не открывать уже существующий.