Список документов в MDI приложении
Каждый шаблон документа содержит список всех документов своего типа. Мэнеджер документов содержит список всех шаблонов приложения. Таким образом можно сделать сначало перебор по всем шаблонам, а в каждом шаблоне сделать перебор по всем документам в приложении.
Для того чтобы в документе был объявлен runtime class, необходимо вставить в объявление документа как минимум макрос
void DocumentList()Примечание:
{
CDocManager* pDocManager = AfxGetApp()->m_pDocManager;
POSITION posTemplate = pDocManager->GetFirstDocTemplatePosition();
while(posTemplate)
{
CDocTemplate* pDocTemplate = pDocManager->GetNextDocTemplate(posTemplate);
POSITION posDoc = pDocTemplate->GetFirstDocPosition();
while(posDoc)
{
CDocument* pDoc = pDocTemplate->GetNextDoc(posDoc);
// Здесь можно сделать то, что нужно с каждым документом.
// Если нужен какой-то определенный тип документов,
// для этого можно воспользоваться runtime классом.
// Вот пример как это сделать:
if(pDoc->IsKindOf(RUNTIME_CLASS(CMyDocument)))
{
// CMyDocument - это ваш класс документа.
}
}
}
}
Для того чтобы в документе был объявлен runtime class, необходимо вставить в объявление документа как минимум макрос