Тема: Порядок перебора листов
Здравствуйте!
Здесь не раз приводился пример кода:
AcDbDatabase *pDB = acdbHostApplicationServices()->workingDatabase(); AcDbDictionary *pDict; AcDbDictionaryIterator *pDictIter; AcDbLayout *pLayout; const ACHAR *LName; pDB = acdbHostApplicationServices()->workingDatabase(); pDB->getLayoutDictionary(pDict,AcDb::kForRead); pDictIter = pDict->newIterator(); for (; !pDictIter->done(); pDictIter->next()) { pDictIter->getObject((AcDbObject*&)pLayout,AcDb::kForRead); pLayout->getLayoutName(LName); pLayout->close(); acutPrintf(L"Layout: %s\n\n", LName); }
Результат:
Layout: Model Layout: Лист 1 Layout: Лист2-Лист 1 Layout: Лист3-Лист 1 Layout: Лист4-Лист 1 Layout: Лист5-Лист 1
Но если изменить порядок листов (вкладок), порядок перебора остается прежним. Подскажите, пожалуйста, как это решить.
Через объектную модель, как я понял, перебор идет по порядку расположения вкладок (смотрел на лиспе).