1、开始运行时的选择窗体中有四个选项,可在程序中没有显示的绘制程序?
   DDX_Text(pDX, IDC_EDIT1, m_strInput);2、类ColorView和TextView都放在Simpvw.cpp中,怎么能这样定义?为什么要这样做?
   我想这应该只是为了便于管理?!!3、CMultiDocTemplate的几个参数的含义。我的理解如下:
   CMultiDocTemplate(IDR_SPLIT2TYPE,                      //指定文档资源的类型
RUNTIME_CLASS(CMainDoc),      //指定文档类对象
RUNTIME_CLASS(CSplitterFrame),//指定框架类对象
RUNTIME_CLASS(CTextView))     //指定视图类对象多谢!!

解决方案 »

  1.   

    LOOK LOOK!然后再发表意见!
      

  2.   

    1、因为添加了多个模板,所以在新建的时候会出现提示,询问创建哪一个模板的文件。具体实现过程参考DOCMGR.cpp文件中的CDocManager::OnFileNew()函数。引如下:
    void CDocManager::OnFileNew()
    {
    if (m_templateList.IsEmpty())
    {
    TRACE0("Error: no document templates registered with CWinApp.\n");
    AfxMessageBox(AFX_IDP_FAILED_TO_CREATE_DOC);
    return;
    } CDocTemplate* pTemplate = (CDocTemplate*)m_templateList.GetHead();
    if (m_templateList.GetCount() > 1)//模板数量大于1的时候出现提示对话框
    {
    // more than one document template to choose from
    // bring up dialog prompting user
    CNewTypeDlg dlg(&m_templateList);
    int nID = dlg.DoModal();
    if (nID == IDOK)
    pTemplate = dlg.m_pSelectedTemplate;
    else
    return;     // none - cancel operation
    } ASSERT(pTemplate != NULL);
    ASSERT_KINDOF(CDocTemplate, pTemplate); pTemplate->OpenDocumentFile(NULL);
    // if returns NULL, the user has already been alerted
    }
      

  3.   

    2、几个类定义在同一个文件中是允许的。这样也没有什么坏处。MFC的源代码就有很多情况是这样的,这样可以省略包含很多头文件!
      

  4.   

    那么对话框中的那些类型选项是由谁添加?在哪里实现的?
    是否对话框中的“类型”就是所有CMultiDocTemplate的第一个参数的集合呢?
      

  5.   

    是的。
    还有什么不清楚,可以在设断电,F11跟踪当mircosoft vc的代码中
    就清楚了。
      

  6.   

    问题1:
    1)、那么对话框中的那些类型选项是由谁添加?在哪里实现的?
    2)、是否对话框中的“类型”就是所有CMultiDocTemplate的第一个参数的集合呢?
      

  7.   

    1)、那么对话框中的那些类型选项是由谁添加?在哪里实现的?
    2)、是否对话框中的“类型”就是所有CMultiDocTemplate的第一个参数的集合呢?
    =====================================
    当然是:
    CMultiDocTemplate* pDocTemplate;
    pDocTemplate = new CMultiDocTemplate(
    IDR_MDITESTYPE,
    RUNTIME_CLASS(CMDITestDoc),
    RUNTIME_CLASS(CChildFrame), // custom MDI child frame
    RUNTIME_CLASS(CMDITestView));
    AddDocTemplate(pDocTemplate);//添加到文档模板链表中
      

  8.   

    IDR_MDITESTYPE的值就是对话框中显示的值?