07 MFC - 用向导生成一个MFC应用程序

简介: 07 MFC - 用向导生成一个MFC应用程序

1. 向导流程

在VS中选择“文件” – “新建” – “项目”:

选择 MFC – MFC应用程序,接下来我们创建一个单文档MFC标准类型应用程序。

一路按默认值next,到最后一个页面:

MFC自动为我们生成了四个类,它们的继承关系如下:

2. 类视图

3. 文档/视图结构体系

MFC应用程序框架结构的基石是文档/视图体系结构,它定义了一种程序结构,这种结构依靠文档对象保存应用程序的数据,并依靠视图对象控制视图中显示的数据,把数据本身与它的显示分离开。

数据的存储和加载由文档类来完成,数据的显示和修改则由视类来完成。 MFC在类CDocument和CView中为稳定视图提供了基础结构。CWinApp、CFrameWnd和其他类与CDocument和CView合作,把所有的片段连在了一起。

CView类也派生于CWnd类,框架窗口是视图窗口的一个父窗口。主框架窗口(CFrameWnd)是整个应用程序外框所包括的部分,即图中粗框以内的内容,而视类窗口只是主框架中空白的地方。

4.消息处理的添加

在主框架类中添加WM_LBUTTONDOWN消息的响应函数,具体操作如下:

从类视图中找到CMainFrame(继承自CFrameWnd),选择此类然后从属性面板中找到消息按钮,在消息列表中找到WM_LBUTTONDOWN消息,添加。

工程文件增加几处改变:

  • 第一处:在框架类头文件中添加了鼠标左键消息函数的函数声明
  • 第二处:在框架类cpp文件中添加了消息映射宏
  • 第三处:在框架列cpp文件中添加了处理鼠标左键消息的函数定义

我们再此OnLButtonDown函数中添加一个MessageBox消息,鼠标左键按下弹出一个提示框,然后执行程序。我们会惊奇的发现程序并未如我们所愿弹出消息框。

因为,框架窗口是视窗口的父窗口,那么视类窗口就应该始终覆盖在框架类窗口之上。就好比框架窗口是一面墙,视类窗口就是墙纸,它始终挡在这面墙前边。也就是说,所有操作,包括鼠标单击、鼠标移动等操作都只能有视类窗口捕获。

目录
相关文章
|
5月前
10 MFC - 对话框应用程序框架介绍
10 MFC - 对话框应用程序框架介绍
45 0
|
5月前
|
C++ Windows
09 MFC - 创建基于对话框的 MFC 应用程序框架
09 MFC - 创建基于对话框的 MFC 应用程序框架
45 0
|
2月前
MFC应用程序单文档及类向导的使用
MFC应用程序单文档及类向导的使用
22 0
|
2月前
|
存储 API Windows
新建MFC桌面应用程序
新建MFC桌面应用程序
10 0
|
2月前
MFC应用程序对话框架构
MFC应用程序对话框架构
13 0
|
2月前
MFC对话框构架程序
MFC对话框构架程序
14 0
|
2月前
|
C++
MFC创建带窗口的DLL
MFC创建带窗口的DLL
15 0
|
存储 程序员 编译器
MFC——简单示例演示及通过MFC向导创建MFC项目
MFC——简单示例演示及通过MFC向导创建MFC项目
288 0
MFC——简单示例演示及通过MFC向导创建MFC项目
|
存储 API 数据库
【MFC】MFC基础篇(1)
【MFC】MFC基础篇(1)
【MFC】MFC基础篇(1)
|
自然语言处理 C++
MFC基于对话框使用dll进行多语言切换
Qt使用qm文件切换有两种加载方式,比较容易一些
435 0
MFC基于对话框使用dll进行多语言切换