c++ - MFC中如何从CWinAppEx访问CView

标签 c++ mfc

我在 MFC 方面不是很专业。我有一个具有基本设置的 MFC 应用程序:单文档应用程序。现在在项目中,我有最标准的设置:一个 ...View 类,一个 ...Doc 类和一个 ...WinAppEx 类。这三者分别代表了模型- View - Controller 的设计原则。我找不到从 WinAppEx 类访问 View 类的方法。

我的实际用例是我将一些命令行参数传递给应用程序。我想在我的主视图中显示这些参数。要访问我在 ...WinAppEx::InitInstance() 方法中的那些参数

CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);

现在我需要将参数传递给 View 。我试过::GetMainWnd() 并遍历它的 sibling 和 child 。我还尝试了::GetNextDocTemplate(),然后是::GetNextDoc(),然后是::GetNextView()。我仍然没有找到我的 ...View 实例。你能透露一些信息吗?

最佳答案

为什么您必须从应用程序访问 View ?为什么不从 View 访问应用程序?从 View 类中,您可以调用 AfxGetApp() 并获取命令行参数。此外,对于一个非常简单的应用程序,通常有一个名为“theApp”的向导定义的全局变量。

关于c++ - MFC中如何从CWinAppEx访问CView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30338266/

相关文章:

c++ - 如何处理一些频繁使用的库的逐步重构?

c++ - 编译时构造函数选择

c++ - CRTP 和方法返回 void *

c++ - 如何在 C++/Linux 中创建目录树?

python - 如何在 Python 进程中访问由 C++ 进程创建的互斥体?

c++ - vprintf 类似函数,但需要一个字符串 ID

windows - mfc 应用程序中的 "binary was not built with debug information "警告含义?

c++ - 破坏属性表的确定、取消和帮助窗口的效果

c++ - 我可以从命令行构建 MFC 应用程序吗?

c++ - 当控件的父窗口被销毁时,是否需要显式恢复控件字体?