Multiple views for a single document (MDI) 2

I think there is a new/simpler way to create new views attached to an existing document using VC++ 5.0. I think it is a cleaner implementation since it uses new hooks that MFC provides rather than having to work with the CCreateContext's.

Assuming the following are already declared in the app:

CMultiDocTemplate * m_pTemplate;
CWhateverDocument * m_pDocument;

The app would only need to have the following to create a new view attached to the document:

void CWhateverApp::OnCreateView()
    // creates the frame and associated view, attaches to document
    CFrameWnd * pFrameWnd = m_pTemplate->CreateNewFrame( m_pDocument, NULL );

    // error checking in case creation of frame or view fails
    RETURN_ON_NULL( pFrameWnd );

    // let the frame do any initialization the framework needs,
    // call the view's OnInitialUpdate()
    m_pTemplate->InitialUpdateFrame( pFrameWnd, m_pDocument );


  • There are no comments yet. Be the first to comment!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Moving from an on-premises environment to Office 365 does not remove the need to plan for disruptions or reduce the business risk requirements for protecting email services. If anything, some risks increase with a move to the cloud. Read how to ease the transition every business faces if considering or already migrating to cloud email. This white paper discusses: Setting expectations when migrating to Office 365 Understanding the implications of relying solely on Exchange Online security Necessary archiving …

  • Enterprises are increasingly looking to platform as a service (PaaS) to lower their costs and speed their time to market for new applications. Developing, deploying, and managing applications in the cloud eliminates the time and expense of managing a physical infrastructure to support them. PaaS offerings must deliver additional long-term benefits, such as a lower total cost of ownership (TCO), rapid scalability, and ease of integration, all while providing robust security and availability. This report …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date