如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
本文由bbbyyy22贡献ppt1。第1章C++编程基础VisualC++编程基础教学目标了解Windows编程基础了解Windows编程基础:消息和事Windows编程基础:资源管理、设备独立性等概件、资源管理、设备独立性等概念了解MFC类的基础知识了解MFC类的基础知识MFC熟练掌握用向导建立应用程序框架明确MFC应用程序结构明确MFC应用程序结构MFCC++程序设计电子教案程序设计》王明福编《VisualC++程序设计》电子教案王明福编教学内容Windows编程概念1.1Windows编程概念MFC基础1.2MFC基础第一个MFCMFC应用程序1.3第一个MFC应用程序1.4应用程序分析返回Windows编程概念1.1Windows编程概念Windows程序设计是基于事件驱动,程序的运行是由事件的发生来控制的。消息驱动机制是Windows程序设计的精髓。1.1.1事件与消息当用户按下一个键、移动鼠标或单击鼠标按钮时,计算机通知Windows系统已经发生了一个事件,以及事件的种类、发生的时间和发生的位置(如坐标值)。事件以如下三种方式产生:●通过输入设备,如键盘和鼠标,产生硬件事件。●通过屏幕上可视的对象,如菜单、工具栏按钮、滚动条和对话框上的控件。●来自Windows内部,例如,当一个后面的窗口显示到前面来。Windows消息是在Windows.h文件中用宏定义的常数。消息常数名通常为WM_XXX,例如,WM_WUIT、WM_CHAR。例如:当用户单击鼠标左键时,将发送WM_LBUTTONDOWN消息,而双击则发送WM_LBUTTONDBLCLK消息。1.1.2消息驱动DOS程序是由一系列预先定义好的操作序列的组合,具有一定的开头、中间过程和结束,也就是程序直接控制程序事件和过程的顺序。它的基本模型如图1-1(a)所示。事件驱动的程序设计不是由事件的顺序来控制,而是由事件的发生来控制,而这种事件的发生是随机的、不确定的,并没有预定的顺序。它在程序设计过程中除了完成所需功能之外,更多地考虑了用户的各种输入,并根据需要设计相应的处理程序。程序开始运行时,处于等待用户输入事件状态,然后取得事件并作出相应反应,处理完毕又返回并处于等待事件状态。如图1-1(b)所示。1.1.3消息响应函数返回消息响应函数是用于处理特定消息的一些代码。例如,当用户点击某菜单项时,希望程序弹出一个口令对话框,那么,只要在相应的消息处理函数中编写弹出一个口令对话框的代码。1.1.4资源管理程序员设计任何应用程序均将涉及到诸如菜单、对话框、消息框以及按钮等标准格式数据。Windows将这些数据保存在资源文件中,程序员可通过编辑工具编辑、修改这些资源文件,使其提供所需的菜单或按钮,并将其放入设计的程序之中。1.1.5设备独立性设备独立性或称设备无关性。在编程时,程序员不必关心诸如打印机、鼠标、键盘、显示器、声卡、显示卡、CDROM等多种设备的类型及其驱动程序。Windows95/98/2000提供了图形设备接口之类的各种抽象接口,使得在程序中可以通过调用标准函数与硬件交互,这些函数通过设备环境的数据结构,由Windows操作系统将其映射到相应的物理设备,而程序员则无需了解其提供的操作设备的各种指令。返回page1MFC基础1.2MFC基础VC++已集成了MFC库,VC++资源编辑器、AppWziard和ClassWizard明显降低了应用程序编码的时间。AppWziard为整个应用程序生成框架代码,同时ClassWizard为消息处理程序生成原型和函数体。1.2.1MFC类库简介MFC(MicrosoftFoundationClass)类库是用来编写Windows应用程序的C++类集,封装了大部分WindowsAPI函数,所以使用MFC类库和VC++提供的高度可视化的应用程序开发工具,使开发变得简单。MFC类库包括CObject类及其派生类以及其他类。有这样一些重要的类(都是CObject的派生类):●应用程序类应用程序类CWinApp。●CWnd类及派生类CWnd类及派生类类及派生类。●CDocument及其派生类CDocument及其派生类及其派生类。●FileServices●GraphicalDrawing●GraphicalDrawingServices。Drawing。Objects。Menus。Objects。●Menus●ODBCDatabase和DAODatabaseSupport。●InternetServices。等等。ServicesMFC应用程序框架1.2.2MFC应用程序框架在VC++6.0