MFC概览

1.一个win32程序需要完成以下基本步骤:

1.注册窗口类

2.创建窗口

3.消息获取与分派

4.处理消息

消息的获取是在一个循环中,可以使用GetMessage()PeekMessage()来获取消息(两者的区别是,空闲时间的处理)

2.当使用vs2013编译器默认生成一个MFC程序时,可以获得一个窗口,但是此时,窗口区域不可编辑,当把CxxView类的父类修改为CEditView是窗口可编辑。

MFC程序的编写过程是对原始MFC类的继承并修改虚函数的过程。

MFC类的继承关系(多文档)如下:



Document/View

MFC之中,可以把Document简单想做是“数据”,MFCCDocument简单地说就是负责处理数据的类。

Document/View的价值在于,这些MFC类已经把一个应用程序所需的“数据处理与显示”的函数空壳都设计好了,这些函数都是虚函数,需要在派生类中改写它们,有关读写文件的操作在CDocumentSerialize函数中进行,有关画面显示的操作在CViewOnDrawOnPaint函数中进行。

View本身虽然已经是一个窗口,其外围却必须再封装一个外框窗口作为舞台。这样的切割其实是为了让View可以非常独立地放置于“MDI Document Frame窗口”或其他应用窗口之中,也可以说,Document Frame窗口是View窗口的一个容器。数据的内容、数据的表象、以及容纳数据表象之外框窗口三者是一体的,换言之,程序每打开一份文件(数据),就应该产生三份对象:

1.一份Document对象

2.一份View对象

3.一份CMDIChildWnd对象(作为外框窗口)

这三份对象由一个所谓的Document Template对象来管理。让这三份对象产生关系的关键在于CMultiDocTempalte:

类别型录网和CRuntimeClassRTTI通过三个宏来完成(每个宏代表一些指定语句)。

在创建MFC界面时,选择合适的基类可以生成不同的初始界面。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值