一、新建MFC项目
- 选择:基于对话框
- MFC的使用:
在共享DLL中使用MFC (程序运行需要dll)
在静态库中使用MFC (程序较大,运行时不需要dll)
- 设置MFC程序主框架样式和标题
-
高级功能
若是用不上“ActiveX控件”可以去掉勾选,若要涉及到网络编程就把“windows嵌套字”选上
-
完成
二、MFC程序执行流程
- 每创建一个MFC项目,默认包含3个类,“关于”对话框、主对话框类、初始化项目的App类。
- 项目生成后,都会有一个属于App类的theApp对象,对本应用程序实例化。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 应用程序创建完成,程序开始运行,进入消息循环,windows程序的事件都是消息驱动的,每产生一个消息就触发一个响应事件,消息和事件通过声明消息映射
DECLARE_MESSAGE_MAP()
联系在一起。
默认包含三个消息:
- 1
- 2
- 3
- 4
- 5
- 当应用程序关闭时,会发送WM_CLOSE消息,程序相应后结束。在类向导中可以添加消息处理函数。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
5.应用程序通过定义,初始化,由winmain开始,注册、创建、显示窗口,消息响应,程序终止,结束运行周期
三、对话框类
- afx_msg宏
afx_msg宏没有任何语法上的实际意义。afx_msg宏表示声明的是一个消息响应函数。 - DoDataExchange函数
用于存放各类控件的变量信息 - OnInitDialog函数
用于初始化对话框 - OnSysCommand系统指令响应函数,默认处理窗口最小化和最大化指令等
- OnPaint绘图消息响应函数
-
调出类向导
项目->类向导,快捷键Ctrl+shilft+X四、添加按钮
-
将默认对话框中的静态文本和原有按钮删除,添加新的按钮1和按钮2,在属性页中可以查看并设置。一般只需要修改两个属性,“Caption”和“ID”,前者是按钮的文本,后者是其唯一标识。
-
为按钮添加事件处理函数
-
实现按钮的功能
添加按钮的控件型变量,变量命名一般以“m_”开头,后面部分为按钮功能简要说明。
- 在初始化函数OnInitDialog中修改Exit对话框不可用
- 1
- 2
- 添加处理事件
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 6.