CodeGuru Home VC++ / MFC / C++ .NET / C# Visual Basic VB Forums Developer.com
Results 1 to 2 of 2
  1. #1
    Join Date
    May 1999
    Posts
    10

    Question on sample doc/view sample?

    I have a book called Windows 98 How To and in it has a sample on loading a view frame, and I understand it but have a question on it:
    In the a menu it loads the frame like so:

    in the
    void CCh92App::InitInstance()
    {
    CMultiDocTemplate* pDocTemplate;
    pDocTemplate = new CMultiDocTemplate(
    IDR_CH92TYPE,
    RUNTIME_CLASS(CCh92Doc),
    RUNTIME_CLASS(CMDIChildWnd), // standard MDI child frame
    RUNTIME_CLASS(CCh92View));
    AddDocTemplate(pDocTemplate);

    pDocTemplate1 = new CMultiDocTemplate(
    IDR_CH92TYPE,
    RUNTIME_CLASS(CCh92Doc),
    RUNTIME_CLASS(CMDIChildWnd), // standard MDI child frame
    RUNTIME_CLASS(CDialogView));
    AddDocTemplate(pDocTemplate1);
    ...
    ...
    }


    I understandt that this code loads the frame, but what I cant find in
    the code is the deletion of the instance doc. I remember somewhere that on a doc/view architecture MFC takes care of deleting the instance for you.
    void CCh92App::OnDisplayFormWindow()
    {
    CCh92Doc *doc = new CCh92Doc("Form Window");
    CFrameWnd *wnd = pDocTemplate1->CreateNewFrame(doc, NULL);
    pDocTemplate1->InitialUpdateFrame(wnd, doc, TRUE);
    }

    Is this correct in my assumption, or do I have to delete it.

    Thanks



  2. #2
    Join Date
    Apr 1999
    Posts
    48

    Re: Question on sample doc/view sample?

    You are right in thinking that the system does it for you. Normally when you close a window it will go through CFrameWnd::OnClose() which works out if there are any other frame windows open on the document. If not then it calls CDocument::OnCloseDocument() which ultimately does a delete this.
    If you want to see the grisly details those functions (like most of MFC) are available to look at in the MFC\SRC directory of your installation.


    Cheers,
    Roger



Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  





Click Here to Expand Forum to Full Width

Featured