Click to See Complete Forum and Search --> : Getting a pointer to CView


May 30th, 1999, 05:59 AM
Hi!

I've had some problem (in MSVC++ 6) getting a pointer to the CView class from the CMainFrame? When I use the code below I get two error messages and I'm forced to close the application:

CView* pView = GetActiveView();
HWND hView = pView->m_hWnd;

Is there anyone who knows how to fix this?

Thanks in advance!

/Tom

Sergio Acosta
May 30th, 1999, 01:46 PM
The pointer returned by GetActiveView() may not be valid. Maybe you are trying to get the pointer before the view is created. I'm not very sure this is the cause, but you can check it.

Dan Haddix
May 30th, 1999, 02:09 PM
FYI: The GetActiveView() function will return NULL if you try to call it from the CMainFrame of a MDI application. If you need to call it for a MDI application you will need to first get the active child window and then call GetActiveView for that window like so...

GetActiveFrame()->GetActiveView();

Hope this helps

Narayan Singh
July 14th, 1999, 07:51 AM
A pointer to View from Frame can be got by this code,
CMyView* ptrView = ( CMyView*)AfxGetMainWnd();

Try this, it may solve your problem

Narayan Singh B.

Singh