对了,file采单里面很多的采单功能都帮你做好了,比如,新建等。

解决方案 »

  1.   

    to kkk16:thank you,这我知道,它是如何实现的,为什么没有相应的实现代码?
      

  2.   

    其实大部分功能如打开,新建等已经在Windows.h或外挂的动态连接库中实现了,这样我们是看不到相应的代码的。当然自己可以重载它。
      

  3.   

    这是关键所在,而且比如我在open里加入其他代码,它原来的功能就不能实现,why?
      

  4.   

    是的,部分代码如,ID_FILE_NEW...均由基类实现。
    不过,这些实现是分在不同的CLASS 中实现的,CWINAPP
    CDOCUMENT,CVIEW,CFRAMEWND
    详细情况,可以查阅MSDN
      

  5.   

    to kingzai:thank you,你能告诉我如打开,新建等在哪个具体的文件里,在工程文件里是如何调用它们的,假如我要修改其中某一命令的话,那不就要重新再写?
      

  6.   

    打开文件:m_pDocTemplate->OpenDocumentFile(m_strFile);
    新建文件:m_pDocTemplateTxt->OpenDocumentFile(NULL);
      

  7.   

    to kingzai:thank you,你说的
    m_pDocTemplate->OpenDocumentFile(m_strFile);
    这个代码在哪个具体的文件或类里,在工程文件里是如何调用它们的?
      

  8.   

    因为我们打开文件都是先要调用文档模板打开的,所以要用CDocTemplate类,具体可看帮助。
    在工程文件中我们可以在CXApp中使用
    CMultiDocTemplate* m_pDocTemplate;
    在CXApp的Inistance()中改写:
    m_pDocTemplate = new CMultiDocTemplate(
    IDR_UABTYPE,
    RUNTIME_CLASS(CUABDoc),
    RUNTIME_CLASS(CChildFrame), // custom MDI child frame
    RUNTIME_CLASS(CUABView));
    //AddDocTemplate(pDocTemplate);
    AddDocTemplate(m_pDocTemplate);
    然后就可以使用这个模板类对象了。
    可以在别的类里面AfxGetApp()->m_pDocTemplate->OpenDocumentFile(m_strFile);
    说了这么多,应该明白了吧
      

  9.   

    to codez:打开,新建等是在哪个基类实现呢?
      

  10.   


    你的这些问题在《MFC经典问答》书里全部都有答案,这本是提高MFC经验值的一本好书。楼上老兄所说的东东在这本书里说的好清楚。
    愿运气再伴你。
      

  11.   

    To  vcmfc(浮躁的菜虫):
    有没有这书的电子版发一份给小弟,《MFC经典问答》