按关键词阅读: C 清华大学 13 课件
1、第十三章 MFC库与Windows程序开发概述,清华大学 郑 莉,C+语言程序设计,2,本章主要内容,Windows程序的基本结构 MFC库简介 使用Visual C+开发Windows程序,3,Windows程序的基本结构,否,否,是,是,4,WinMain()函数,初始化应用 初始化和创建应用窗口 进入应用程序的消息循环,5,窗口过程WndProc(),执行窗口的消息处理: 分析消息信息 , 决定应用程序如何处理消息或响应一个事件 。
,6,MFC库,类库是一个可以在应用程序中使用的相互关联的类的集合 。
MFC库Microsoft 基本类库是一个Windows应用程序框架 , 它定义了应用程序的结构 ,。
2、并实现了标准的用户接口: 管理窗口、菜单、对话框 , 实现基本的输入/输出和数据存储 。
,MFC库简介,7,应用程序框架,应用程序框架是一种类库的超集 在程序运行时 , 流程的控制多数是由框架实现的 。
应用MFC框架来构造应用程序时 , 程序员的角色就是提供应用程序专用的代码 , 并指定这些代码是用来响应哪些消息和命令的 , 以使框架能够在消息和代码间建立联系 。
,MFC库简介,8,文档视图结构,应用程序框架的核心是文档视图结构 。
MFC通过文档视图结构为应用程序提供一种将数据与视图相分离的存储方式 。
文档类的作用是将应程序的数据保存在文档类对象中 , 以及从磁盘文件中读或向磁盘文件中写数据 。
视图类的作用是显示数据和编辑 。
3、数据 。
,MFC库简介,9,使用Visual C+开发Windows程序,建立一个应用程序框架 观察自动生成的应用程序 构造应用程序的用户接口 将菜单映射到消息处理函数 将工具栏按钮映射到命令 测试自己编写的消息处理函数 增加对话框 初始化、验证和提取对话框中的数据 创建新增的类 添加现成的组件到应用程序中 实现自己的文档类 实现Open、Save和Save As命令 实现视图类 改进缺省的打印 增加屏幕滚动 创建表单视图 创建数据库表单 构造(Build)、测试和调试应用程序,例:人员信息管理程序,用MFC设计一个人员信息管理程序的界面 通过对话框输入人员信息 在窗口中显示人员信息,10,St 。
4、ep 1: 建立MFC工程,11,选中工程类型,Step 2: 用向导配置工程,12,选择应用程序类型,Step 3: 添加对话框,13,资源视图,Step 4: 为对话框添加类,14,输入类名,Step 5: 向对话框中添加控件,15,Step 5: 向对话框中添加控件,16,使用工具箱添加控件,在属性列表中设置窗口文字,Step 6: 为文本框添加变量,17,变量名,变量类型,Step 7: 编辑菜单,18,添加新的菜单项,Step 8: 为菜单项添加事件处理程序,19,选择事件处理程序所属类,Input Data菜单项处理(1),const char * const EMPLOYEE_F 。
5、ILE_NAME = employee.txt;
void CMy13_1View:OnTestInputdata() Manager m1;
Technician t1;
SalesManager sm1;
Salesman s1;
vector employees;
employees.push_back(,20,Input Data菜单项处理(2),t1.setWorkHours(input.m_hours);
/设置工作时间 sm1.setSales(input.m_ss1);
/设置本月的销售总额 s1.setSales(input.m_ss2);
/设置本月销售额 ofstream o 。
6、ut(EMPLOYEE_FILE_NAME);
/创建一个输出文件流对象 for (vector:iterator iter = employees.begin();
iter != employees.end();
+iter) (*iter)-promote();
(*iter)-pay();
/计算月薪 out getName() getIndividualEmpNo() getGrade() getAccumPay() endl;
out.close();
,21,Output Data菜单项处理,void CMy13_1View:OnTestOutputdata() ifstream。
【清华大学|清华大学c++课件第13章】7、in(EMPLOYEE_FILE_NAME);
/创建一个输入文件流对象 if (!in) MessageBox(File doesnt existed!);
return;
/从文件读入人员信息 CClientDC dc(this);
int i = 0;
while (true) string line;
getline(in, line);
if (!in) break;
dc.TextOut(100, 100, 人员信息管理系统:);
dc.TextOut(100, 150 + 30 * (i+), line.c_str();
in.close();
,22,Step 9: 添加Employee相关文件,将Employee.h和Employee.cpp加入工程 在13_1View.cpp中添加下列指令: #include Employee.h #include InputDialog.h #include #include #include using namespace std;
,23,程序运行结果主窗体,24,程序运行结果输入对话框,25,程序运行结果结果输出,26,27,小结与复习建议,主要内容 简单介绍Windows图形界面程序设计基础知识和基本设计思路 。
达到的目标 简单了解Windows环境下的应用程序开发 实验任务 实验十三 。
来源:(未知)
【学习资料】网址:/a/2021/0330/0021812633.html
标题:清华大学|清华大学c++课件第13章