/********************************************/
第三章:从“Hello,world!”着手学习AppWizard
1,视图:从用户角度看,视图是一个普通的窗口;从程序员角度看,试图是一个从MFC库中CView类所派生的类的对象。视图对象的行为完全由类的成员函数和数据成员决定,其中包括派生类的特定成员和基类的继承而来的成员。
2,CEx03aView类最重要的基类是CWnd和CView。CWnd提供CEx03aView的窗口属性,而CView提供它和应用程序框架其它部分之间的联系,特别是和文档及框架窗口之间的联系。
3,视图类中OnDraw成员函数:OnDraw成员函数被设计成一个虚成员函数,每次当视窗需要被重绘时候,应用程序都要调用OnDraw函数。
当用户改变了窗口尺寸,或当前窗口恢复了先前被遮盖的部分,或当前应用程序改变了窗口的数据的时候,窗口都需要被重绘。
当用户改变了窗口尺寸,或窗口需要恢复被遮盖的部分,则应用程序自动去调用OnDraw函数。
但注意,如果程序中某个函数修改了窗口数据,则它必须通过调用视图所继承的Invalidate(InbalidateRect)成员函数来通知Windows,调用Invalidate后会触发对OnDraw函数的调用。
4,WINDOW中不允许直接访问显示硬件,必须通过和窗口相关联的“设备环境”跟显示硬件通讯。MFC中设备环境由CDC类对象来表示。
5,利用Win32 Debug模式 和 Win32 Release模式开发应用程序。
(默认情况不出现BUILD工具栏,可从TOOLS菜单选择Customize项,设置显示Build工具栏,VC6中也可在工具栏上直接点击右键选择Build工具栏)
Win32
Release模式Win32 Debug模式
源码调试不能编译器连接器都允许
MFC诊断宏不能(定义了NDEBUG)可以(定义了_DEBUG)
库连接MFC Release库MFC Debug库
编译优化速度优化(学习版不能)没有优化(快速编译)
我们应在Win32 Debug模式下开发应用程序,然后在发布或交付前用Win32 Release模式重建应用程序。in32 Release模式下建立的EXE文件又小又快。
6,诊断宏TRACE宏对监测程序状态特别有用。这些宏要求在允许追踪的情况下才有效,允许追踪是默认设置。
(问题:TRACE宏的应用事例与运行原理。宏TRACE的输出在在哪显示呢?在output输出框下选择Debug项,调试运行程序即可看到TRACE宏输出。)
7,预编译头文件代表了编译器在源代码特定行上进行‘快照’。在MFC库程序中,快照常紧接在#include
"stdafx.h"后进行。
文件StdAfx.h包含了MFC库头文件的#include语句。该文件的内容取决于运行AppWizard时候所做的选择。
文 件StdAfx.cpp只包含#include
"stdafx.h"语句。StdAfx.cpp文件用来在相应项目的目录下产生预编译头文件(PCH文件)。编译开关/Yc只用于StdAfx.cpp 文件,导致产生预编译头文件(PCH),而其它源文件的/Yu编译开关使可以使用一个存在的PCH文件。开关/Fp用来指定专门的PCH文件名,默认情况 下为相应目标输出文件目录下与项目同名扩展名为PCH的文件。
(VC6下具体设置参见:[Project Settings属性框] [c/c++]属性页[Project Options]、[Source File Options]项)
(注 意:在VC6 [Project Settings属性框]中查看StdAfx.cpp文件[Source File Options]项时候,可以看到[Project Settings, and
/Yc"stdafx.h"],这里说明一下,StdAfx.cpp文件的[
/Yc"stdafx.h" ]的设置覆盖了[Project Options]设置中的[/Yu"stdafx.h"])
分享到:
相关推荐
vc++技术内幕第四版(清华版)学习笔记 经典
我看的『VC++技术内幕』版本为--潘爱民和王国印译清华大学出版的第四版,因从网上看到此版译的最好。 这篇学习笔记是后补的,因为这本书我已经看到了第三十二章,之前并没有做笔记,只是随意的在书上画了画重点,...
VC++技术内幕(第四版)笔记
VC++ 技术内幕 笔记 潘爱民VC++ 技术内幕 笔记 潘爱民VC++ 技术内幕 笔记 潘爱民VC++ 技术内幕 笔记 潘爱民VC++ 技术内幕 笔记 潘爱民VC++ 技术内幕 笔记 潘爱民VC++ 技术内幕 笔记 潘爱民VC++ 技术内幕 笔记 潘爱民...
VC++技术内幕(第四版)笔记:自己学习的经验 以及学习步骤……
『VC++技术内幕』版本为--潘爱民和王国印译清华大学出版的第四版,因从网上看到此版译的最好。 这篇学习笔记是后补的,因为这本书我已经看到了第三十二章,之前并没有做笔记,只是随意的在书上画了画重点,可是越...
VC++技术内幕学习笔记
『VC++技术内幕』版本为--潘爱民和王国印译清华大学出版的第四版
VC++技术内幕全程笔记,很好的自己笔记,珍贵资料.
《vc++技术内幕学习笔记》,chm格式,方便阅读
VC++技术内幕的学习笔记,我自己总结的,应该有些帮助
VC++技术内幕学习笔记.rar
精简了vc++技术内幕的繁多内容,能更快理解知识,初学者必备的文档
我看的『VC++技术内幕』版本为--潘爱民和王国印译清华大学出版的第四版,因从网上看到此版译的最好。 这篇学习笔记是后补的,因为这本书我已经看到了第三十二章,之前并没有做笔记,只是随意的在书上画了画重点,...
该笔记是看《MySQL技术内幕第四版》的一些笔记,如果有人想要这本书的资源,请在评论区留下你的邮箱,我会尽快将书发到你的邮箱中。
第三篇:消息映射和视图类 第四篇:资源和编译 第五篇:基本事件处理 第六篇:映射模式 第七篇:图形设备接口(GDI) 第八篇:颜色和字体 第九篇:模式对话框和通用控件(上) 第十篇:模式对话框和通用控件...