MDI - активное дочернее окно
От: SpiritFire  
Дата: 30.09.09 21:38
Оценка:
Сколько ни ковырлся, не пойму, объясните, пожалуйста, что к чему.

Есть MDI приложение, есть обработчик нажатия кнопки на тулбаре... Стараюсь получить текущее дочернее окно.


void CmainFrame::onPaintRectBullon()
{
   CMDIChildWnd* current = MDIGetActive();      // тут всегда NULL
   GetActiveDocument();                         // тут всегда access violation

   if ( current )
       current->CloseWindow();

   ::MessageBox(NULL, _T("123"), _T("123"), 0);
}



Или я дурак, или справка какая-то через **** у них, не пойму, как получить текущее дочернее окно.

Вроде пример из MSDN:
void CMainFrame::OnViewChange(UINT nCmdID)
// There is an ON_COMMAND_RANGE message map entry associated with
// OnViewChange:
// ON_COMMAND_RANGE(ID_VIEW_CHANGE1, ID_VIEW_CHANGE2, &OnViewChange)
{
   CView* pViewAdd;
   CView* pViewRemove;
   CDocument* pDoc = GetActiveDocument();
   ...
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.