我在VC创建一个工程,系统自动为该工程添加的几个基本的类,比如Frame,View,App等之间的关系?

解决方案 »

  1.   

    MFC 程序入口 是 隐藏起来的。
    程序里有一个 CXxxxApp theApp; 生成 一个对象,这是可见的程序起点。自动生成的MFC 程序,主要结构叫  Doc-View,程序员主要工作量在这两个类。 Doc 用来读入数据,存放不时变化的数据和现场。View用来画图画窗打印等做工作。View 用 CXxxxDoc* pDoc = GetDocument(); 获得Doc里的数据,更新Doc里的数据。Doc-View 纽带就是这句东西。MainFrame 用OnCreate(..) 建程序主视窗。
    ChildFrame 子窗。一般用在平行作业(多文件)。
      

  2.   

    CWinApp
      └CFrameWnd
        └CView
      

  3.   

    LZ如果想了解框架细节的话,可以先使用SDK写些程序;MFC只是对其进行了一定程度的封装。
      

  4.   

    +1
    入口就在studio安装目录下的VC\atlmfc\src\mfc\appmodul.cpp文件里其它的比如说注册窗口类啊,消息循环啊什么的都在同一个文件夹里,你可以在搜索栏中搜索内容,我就是搜索 内容:winmain
    然后找到的
      

  5.   

    程序有一个主对象,叫theApp。他是App类的对象,入口从InitInstance开始。它创建主窗口CMainFrame* pMainFrame = new CMainFrame;
    这就是楼上说的App下来就是MainFrame。如果是多文档,在MainFrame框架还要创建ChildFrame,这个也是框架。在框架下再创建View,也叫视,视口什么的,都是一个意思。初学者可以先这样理解,框架MainFrame或ChildFrame是窗口四周的框、工具栏状态栏菜单占据的地方以及如果没有View时那个黑灰色的背景,View呢就是白色的让你在OnDraw画东西的地方。框架可以没有View,也可以在框架上画图输出什么的。但是View不可以没有框架。这就像对话框一样,对话框就是框架,上面放个编辑框,那就是它的View。