Сколько ни ковырлся, не пойму, объясните, пожалуйста, что к чему.
Есть 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();
...
}