在这个多文档模式下,因为我的“打开文件对话框”中的文件类型需要有多种,因此默认的“所有文件”并不能满足,所以我对CXXXDoc类添加并修改了OnFileOpen()函数,使其“打开文件对话框”满足多文件类型,但是修改过后,“打开文件对话框”文件类型虽然满足了,并且第一次在对话框里面选择了文件并打开成功后,当我再次选择对话框选择文件,点击“打开”,并没有第二个文档窗口打开,这是为什么呀,还需要哪里修改吗?不断的新建文件都能产生多个文档窗口。谢谢解答

解决方案 »

  1.   

    这样的问题,在有个帖子看过,与我类似,但是还是没能搞明白怎么解决?
    http://topic.csdn.net/u/20070917/16/3425e10e-107a-4ed1-ad75-356c05c41776.html
    求指点呀~
      

  2.   

    你实现的方法是错误的,不应该去重载OnFileOpen。
    应该给工程添加文档模板,那样它会自动支持新的格式。你重载打开文档,并没有传递新的文档模板。
    仔细看看这些:
    http://msdn.microsoft.com/zh-cn/library/hts9a4xz.aspx
    http://msdn.microsoft.com/en-us/library/e6k9a02e.aspx
    http://msdn.microsoft.com/zh-cn/library/58d94y2f.aspx
    http://msdn.microsoft.com/en-us/library/0dyc0e53.aspx
      

  3.   

    注意看看这个:
    http://msdn.microsoft.com/zh-cn/library/2cabdh52.aspx
    很多人做多文档时都有这个问题,把MFC想得很原始,其实MFC的多文档框架会自动根据文件扩展名选择文档模板。