《Visual_C++.NET程序设计教程与上机指导》第4章:Windows程序设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第4章Windows程序设计教学提示:本章说明了Windows应用程序的特点,即用户图形界面、硬件无关特性及消息驱动机制,介绍了VisualC++.NET的MFC类及如何应用VisualC++.NET开发Windows程序。教学目标:熟悉Windows应用程序的特点及流程,特别是消息驱动机制,了解MFC的基本概念,掌握应用VisualC++.NET开发Windows程序的方法。4.1Windows程序设计基础Windows操作系统是由Microsoft推出的基于PC的图形操作系统。Windows应用程序具有下列几个特点:一是它的标准用户图形界面——窗口;二是应用程序与硬件的无关特性;三是所有的Windows应用程序都是采用消息驱动机制。应用程序的设备无关性将在第10章中进行介绍,本章简单介绍一下窗口和消息的概念。4.1.1Windows窗口的概念4.1.2Windows程序的消息响应机制4.1.3Windows程序流程4.1.1Windows窗口的概念1.WindowsAPI2.Windows窗口返回1.WindowsAPIWindows应用程序是通过在应用程序中调用WindowsAPI实现的。WindowsAPI是Windows操作系统提供的应用程序编程接口,包括几百个函数加上数据常量、宏、结构以及许多其他项。大多数API在Windows.h头文件中定义。Windows95以上的操作系统都是32位的,因此在目前常用的Windows中都使用Win32API。返回2.Windows窗口“窗口”是Windows操作系统标准的图形界面,一个典型的窗口如图4.1所示。应用程序在创建某个类型的窗口前,必须首先注册该“窗口类”(WindowsClass)。注册时把窗口过程、窗口类型以及其他类型信息和要登记的窗口类关联起来。应用程序接着通过调用WindowsAPI来创建窗口。创建一个窗口实际调用的函数需要下列参数:屏幕位置、窗口大小以及即将创建的窗口风格。返回图4.1一个典型的窗口返回4.1.2Windows程序的消息响应机制Windows程序与其他类型程序的不同点就是消息。例如DOS程序,要等待(有时也称为检测)可能的输入,如键盘或鼠标,如果程序检测不到鼠标,就不会对鼠标的动作做出相应的反应。而在Windows程序中以消息作为媒介,在操作系统中用消息来告诉应用程序有情况发生了。例如,用户按下了某个键,单击或移动了鼠标、打印机可用了等等。一个窗口(每一个元素都是一个窗口)也可以发送消息给另一个窗口,大多数窗口对消息的反应是发送一条略微不同的消息给另外一个窗口。返回4.1.3Windows程序流程用Windows平台软件开发工具包(SDK)的Win32API编写各种Windows应用程序,有其共同的规律:首先是编写WinMain函数,编写处理消息和事件的窗口过程WndProc,在WinMain里头注册窗口(RegisterWindow),创建窗口,然后开始应用程序的消息循环。返回4.2怎样用VisualC++.NET设计Windows程序在VisualC++.NET中,开发Windows应用程序有以下几种方法:直接调用Windows环境提供的Win32API函数来编写Windows应用程序。实际上该方法适用于任何Windows环境下的C/C++语言编程。使用MFC类库和活动模板库(ATL)直接编写Windows应用程序。既使用MFC类库和ATL,也使用向导(Wizard)来编写Windows应用程序。在这种情况下用MFC应用程序、MFCActiveX控件等向导来生成Windows应用程序的基本源文件,然后在程序框架的基础上建立应用程序的类和消息处理代码并定义控件的属性、事件和方法,最后把各应用程序所要求的功能添加到程序中。使用C++托管扩展程序编写Windows应用程序。这是基于通用语言运行时环境的Windows应用程序。其实,不管程序使用何种开发方式编写Windows应用程序,最终都要调用到WindowsAPI,因此,大家一起来看看在VisualC++.NET中如何用Win32API编写Windows程序,以进一步了解Windows程序的流程。4.3VisualC++.NET的基础类库(MFC)介绍4.3.1MFC库简介4.3.2MFC中的常用类4.3.3MFC中类的消息机制4.3.4MFC的程序流程4.3.1MFC库简介Windows程序与其他类型程序的不同点就是消息。例如DOS程序,要等待(有时也称为检测)可能的输入,如键盘或鼠标,如果程序检测不到鼠标,就不会对鼠标的动作做出相应的反应。而在Windows程序中以消息作为媒介,在操作系统中用消息来告诉应用程序有情况发生了。例如,用户按下了某个键,单击或移动了鼠标、打印机可用了等等。一个窗口(每一个元素都是一个窗口)也可以发送消息给另一个窗口,大多数窗口对消息的反应是发送一条略微不同的消息给另外一个窗口。返回4.3.2MFC中的常用类用Windows平台软件开发工具包(SDK)的Win32API编写各种Windows应用程序,有其共同的规律:首先是编写WinMain函数,编写处理消息和事件的窗口过程WndProc,在WinMain里头注册窗口(RegisterWindow),创建窗口,然后开始应用程序的消息循环。返回4.3.3MFC中类的消息机制Windows程序与其他类型程序的不同点就是消息。例如DOS程序,要等待(有时也称为检测)可能的输入,如键盘或鼠标,如果程序检测不到鼠标,就不会对鼠标的动作做出相应的反应。而在Windows程序中以消息作为媒介,在操作系统中用消息来告诉应用程序有情况发生了。例如,用户按下了某个键,单击或移动了鼠标、打印机可用了等等。一个窗口(每一个元素都是一个窗口)也可以发送消息给另一个窗口,大多数窗口对消息的反应是发送一条略微不同的消息给另外一个窗口。返回4.3.4MFC的程序流程用Windows平台软件开发工具包(SDK)的Win32API编写各种Windows应用程序,有其共同的规律:首先是编写WinMain函数,编写处理消息和事件的窗口过程WndProc,在WinMain里头注册窗口(RegisterWindow),创建窗口,然后开始应用程序的消息循环。返回4.4上机指导下面提供一个HELLOAPP示例,该示例定义了应用程序类的派生类和窗体的派生类,用很少几行代码在屏幕上显示一个窗口。同任何用MFC编写的应用程序一样,HELLOAPP也包含一个从应用程序类派生的类。此应用程序类提供InitInstance的最小实现,该实现构造一个(应用程序特定的CMainWindow类的)框架窗体对象,然后调用该窗口的ShowWindow和UpdateWindow函数。

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功