MFC程序设计:视图类CMyView的修改与MFC基础
需积分: 9 30 浏览量
更新于2024-07-13
收藏 3.13MB PPT 举报
"本教程聚焦于MFC(Microsoft Foundation Class)的使用,特别是如何在视图类CMyView中进行修改。MFC是微软提供的一个类库,它封装了大部分Windows API,使得开发者能够更方便地操作API并构建Windows程序。教程中提到,为了简化程序设计,应当删除CMyView类中不再需要的结构体STUDENT定义,以及不再使用的OnPaint成员函数,转而专注于OnDraw函数,通过它来获取和显示文档对象CMyDoc中的数据。"
在MFC程序设计中,第11章详细介绍了MFC的基础知识。MFC类库是微软对Windows API的面向对象封装,它构建了一个层次化的类结构,包含了如窗口、对话框、菜单等标准Windows组件。MFC类库中的成员函数很多,许多与对应的API函数功能相同,但使用起来更加简便。
MFC类库可以分为几个主要类别:
1. **通用数据处理类**:如CString用于字符串处理,CByteArray等用于不同类型的数组操作,以及CMap和CList系列类用于数据映射和列表操作,提供灵活的数据存储和检索。
2. **Windows API封装类**:这些类将API函数封装,例如CWnd代表窗口,CDialog表示对话框,CDC类用于设备上下文操作。这些类使得开发者可以通过类的方法调用API,减少了直接使用API的复杂性。
3. **应用程序框架类**:这是MFC的核心,包括CWinApp代表应用程序类,CWinThread处理线程,以及CDocTemplate用于文档/视图架构。这些类帮助构建Windows程序的基本骨架,让开发者可以快速生成应用程序的基础结构,然后在此基础上扩展功能。
在视图类CMyView的修改中,有两个关键步骤:
1. **删除不再需要的结构体和数据成员**:移除CMyView.h中定义的STUDENT结构体和相关的数据成员s,这是为了精简代码,避免不必要的数据处理。
2. **优化消息处理**:由于OnDraw和OnPaint都可以处理屏幕显示,但OnPaint优先级更高,为了简化程序,可以注释掉或删除OnPaint函数,只保留OnDraw。这样,所有的数据获取和显示都将通过OnDraw函数完成,直接与文档对象CMyDoc交互,提高了代码的清晰度和效率。
通过遵循MFC的编程原则,开发者可以更快地构建出功能丰富的Windows应用程序,同时减少对底层API的直接操作,从而提高开发效率和代码的可维护性。
2011-04-25 上传
182 浏览量
2014-04-29 上传
2011-06-12 上传
2009-07-15 上传
2014-05-16 上传
2011-10-16 上传
2017-03-12 上传
2009-02-23 上传
条之
- 粉丝: 27
- 资源: 2万+
最新资源
- 2-求职简历-word-文件-简历模版免费分享-应届生-高颜值简历模版-个人简历模版-简约大气-大学生在校生-求职-实习
- C++ IPHelper IP输入控件
- alcohol-or-gasoline:具有功能的应用程序,根据用户为每种物质输入的价格,使用酒精或汽油是否更有利,请回答用户。 在此应用程序中,全局变量和局部变量的原始类型发生了变化,并且采用了对它们之间建立联系的方法承担全部责任的原则
- 加减法自动生成工具@QT
- fullstack-react-graphql:在后端使用GraphQL和MongoDB在前端使用React.js制作的CRUD应用程序
- 基于Robert交叉梯度的图像锐化.zip
- anoninja
- sparrow:一种c风格的玩具语言,用llvm实现
- 1-求职简历-word-文件-简历模版免费分享-应届生-高颜值简历模版-个人简历模版-简约大气-大学生在校生-求职-实习
- graphein:蛋白质图库
- CV_MarieLATASTE_V2:CV_MarieLATASTE的第二版
- (修)09-07 罗灿丽(4).zip
- VC++在程序中用代码注册和卸载ocx控件
- riru_storage_redirect:存储隔离(存储重定向)是一个为应用程序提供隔离存储功能的应用程序。 它可以防止设计不当的应用程序使您的存储混乱,并让您控制文件可以访问的文件
- Documentation:用于在我们的官方主页上生成文档的文件
- episode-47:第 47 集 - 使用 Ansible 进行零停机部署(第 44 部分)