如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
VC++的Windows编程入门东南大学成贤学院1本课程简要介绍Windows应用程序的形式和在VC++集成开发环境下使用MFC开发Windows应用程序的基本方法,以使同学们对面向对象的可视化(Visual)程序设计建立一个初步的概念并掌握一些基本方法,为深入学习和使用VC++和其他可视化编程工具打下基础。2主题Windows编程概述使用MFC进行Windows编程常用控件及其应用菜单设计3§1Windows编程概述●Windows编程的基本特点●Windows编程方法●窗口41.1Windows编程的基本特点Windows编程有三个基本特点:■可视化的图形用户界面设计■使用面向对象方法编程■采用事件驱动的程序运行方式51.可视化的图形用户界面设计我们已经相当熟悉以下小程序:【例1.1】#include<iostream>usingnamespacestd;intmain(){cout<<"VC++是功能强大的编程工具!"<<endl;cout<<"VC++是面向对象的编程工具!"<<endl;cout<<"VC++是可视化的编程工具!"<<endl;return0;}6【例1.2】#include<iostream>usingnamespacestd;intmain(){doubler;cout<<”请输入圆半径:”<<endl;cin>>r;cout<<”圆周长=”<<2*3.1416*r<<endl;cout<<”圆面积=”<<3.1416*r*r<<endl;return0;}这是基于控制台的文字用户界面应用程序。运行这种程序之后,屏幕出现MS-DOS窗口,并且按照程序代码的流程执行,用户输入数据后即显示执行结果。78进行Windows编程,同样可以写出相同功能的程序,程序运行出现如图1和图2所示的窗口。图1中的窗口称为文档窗口,图2中的窗口称为对话框。显然,它们比MS-DOS的文字用户界面更为友好且方便。这种界面称为图形用户界面(GUI,GraphicalUserInterface)。在非可视化环境下,图形用户界面的设计都需通过编写程序代码来实现,且在设计过程中是看不到界面的实际显示效果的。9VisualC++支持可视化的图形用户界面设计。Windows应用程序的每个图形界面元素(如对话框、菜单、命令按钮、文本框等)都是可视的(Visual),即设计时在显示器屏幕上是可见的,且所见即所得。编程者可根据具体用户界面设计的要求,直接使用VC++系统提供的标准工具在屏幕上“画”出各种Windows风格的图形界面元素,而不必为这些界面元素的构建设计大量代码,VC++会自动生成这些界面元素的设计代码,开发人员只需为每个图形界面元素设置特定的属性值,代码编写只针对界面元素所要实现的具体功能。102.面向对象编程方式由于Windows应用程序的复杂性,从图形用户界面到整个应用程序,都是采用面向对象的方法组织的。Windows中的对象可以是所有的规范部件,如窗口、菜单、工具栏、按钮、文本框、以及程序模块等。从用户的观点看,Windows应用程序有一个窗口,窗口上有若干菜单、命令按钮、图标等界面图形元素;而窗口背后是一些对应的程序。从MFC的面向对象模型看,一个Windows应用程序可以拆分成许多功能独立的对象,各自负责不同类型的工作,其最基本的构成对象可以分为两大类:程序对象和窗口对象。11一个应用程序的执行就像一场舞台演出。应用程序对象是幕后人员(导演、剧务等),它们负责安排并指挥“演员”(窗口)上场,准备和调度各种演出“资源”(如菜单、工具栏、图标等)。从操作系统来看,具有“法人”地位的是应用程序对象而非窗口对象,应用程序可以占有CPU时间和内存空间,还可拥有演出所需的“资源”。Windows系统给每个对象分配一个句柄(handle),它是一个4字节长的整数值,是对象的唯一内部编号。应用程序通过句柄访问相应的对象。每个对象除了句柄外,还有一个对象标识符ID,可看作是对象的外部名。ID与句柄的区别主要在于:ID可以是用户自行设定的;而句柄是系统内定的,对用户是透明的,这能防止应用程序直接访问对象的内部信息。123.事件驱动的程序运行机制传统的文字用户界面的应用程序都有一个起点和终点,程序中的各模块(函数或对象)的控制过程和执行顺序是在编写程序时精心设置好的,是预知的、确定的,整个程序的运行过程是明确的。这种程序运行机制称为过程驱动。