【问题标题】:MFC doc/view architecture - create document without initial viewMFC 文档/视图体系结构 - 创建没有初始视图的文档
【发布时间】:2016-03-25 23:39:19
【问题描述】:

我正在将一些旧的 C++ 代码从旧的构建环境 (VS2003) 转移到一个(稍微)较新的 (VS2010) - 由于各种原因,较新的 IDE 不适合。我正在尝试用尽可能少的更改来构建它。

它从保存的文件中加载一组视图。我注意到的是,在 VS2010 上构建时,总是有一个额外的视图。我的结论是这个版本的 MFC 必须创建一个初始视图,而旧版本没有。

我想已经加载了所有这些我可以删除不需要的视图,但我想知道是否有一种更简洁的方法让它不首先创建不需要的视图?

【问题讨论】:

    标签: c++ visual-studio-2010 mfc visual-studio-2003 document-view


    【解决方案1】:

    我假设你有一个 MDI 应用程序,在

    // Parse command line for standard shell commands, DDE, file open
    CCommandLineInfo cmdInfo;
    ParseCommandLine(cmdInfo);
    

    // Dispatch commands specified on the command line
    if(! ProcessShellCommand(cmdInfo))
        return FALSE;
    

    你应该简单地说:

    // suppress automatic creation of child window
    if(CCommandLineInfo::FileNew == cmdInfo.m_nShellCommand)
        cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing;
    

    在启动时,您不会有新的视图/文档。

    【讨论】:

      【解决方案2】:

      查看应用程序初始化类中的一些NewDocument() 调用。可能您将一些旧代码与向导生成的代码混合在一起。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-21
        • 1970-01-01
        • 2014-10-16
        • 2023-03-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多