visualc高级编程第二讲

visualc高级编程第二讲

ID:39992228

大小:526.31 KB

页数:33页

时间:2019-07-16

visualc高级编程第二讲_第1页
visualc高级编程第二讲_第2页
visualc高级编程第二讲_第3页
visualc高级编程第二讲_第4页
visualc高级编程第二讲_第5页
资源描述:

《visualc高级编程第二讲》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、VisualC++高级编程第二讲使用MFC进行GUI编程WindowsGUI编程MicrosoftVisualC++提供了几种不同途径的GUI(图形用户界面)编程方法:1、直接调用底层Win32应用程序接口(API)提供的函数用C或C++编写GUI程序。API函数是Windows操作系统的一部分。2、利用Microsoft基础类(MFC),用C++进行编程。MFC可以简化GUIWin32API,提供更高级、更具移植性的编程接口。3、可以用MFC和Microsoft向导编写C++下的GUI程序,应用程序向导可以用来生成各种不同的GUI程序源文件,然后可以用ClassWizard工具生成派生类、定

2、义处理消息等大部分代码。程序类和文件在SDI(单文档接口)应用程序中,一般包括四个主类:文档类:用来存放程序数据视图类:用来显示程序数据主帧窗口类:管理主程序窗口应用程序类:完成程序任务,如初始化程序和完成最后程序整理等程序的流程程序的流程如下:调用CWinApp类构造器程序入口函数WinMain函数接收控制初始化处理消息处理循环程序的终止程序的流程初始化所有全局对象CWinApp构造函数主函数消息循环应用程序构造函数InitInstance函数疑问1:主函数到底在那里?疑问2:MFC如何完成主函数的功能CWinApp—取代了WinMain的地位疑问3:由操作系统传入的四个参数如何获取?疑问4

3、:CWinApp类中的主窗口句柄在哪里?CWinApp—取代了WinMain的地位问题四的答案CFrameWnd—取代了WndProcSDK的窗口函数MFC的消息映射问题三的答案在MFC程序中,WINMAIN函数还是存在的,它由MFC准备好的并由链接器直接加入应用程序代码中的(StartUp代码)。消息处理MFC中消息处理循环构造游戏窗口VC中四个重要的工具构造游戏窗口在利用VC开发游戏程序时,由于MFC的APP向导是一个程序代码产生器——在各项选择中产生出某种特色的主干程序,这个过程会嵌入许多默认的窗口、对话框、菜单等组件,这些组件在游戏中根本用不上,因此我们一般采用第二种开发方式:即利用M

4、icrosoft基础类(MFC)开发游戏程序。构造游戏窗口的步骤程序项目的建立:P18~19(选择Win32)STDAFX.H文件的建立:这个文件用来作为Precompiledheadfile(预编译头文件),其内只是载入其他MFC头文件。资源文件的建立启动ClassWizard用来管理类、消息映射等设置使用MFC函数库使用ClassWizard建立应用程序类和窗口类生成应用程序类实例,改写InitInstance函数(生成主窗口)构造游戏主窗口MFC概述MFC其实是把WindowsAPI做了一层薄薄包装,包装于各个设计良好的classes而已。MFC非常巨大,主要可以分为下列几大群组:一般用

5、途Classes:提供字符串类、数据处理类、异常处理类、文件类等WindowsAPIClasses:用来封装WindowsAPI,例如窗口类、对话框类、DC类等应用程序骨干类:包括Document/View、消息泵、动态创建、文件读写等高级抽象类:如工具栏、状态栏、对话框等操作系统扩展类:如OLE、ODBC、DAO、MAPI等MFC绘图类Windows不允许用户直接存取VGA显卡上的内存,所以在MFC中提供了大量的GDI(图形设备接口)类:CGdiObjiectCBitmapCBrushCFontCPaletteCPenCRgnP30设备上下文在绝大多数的WINDOWS应用都需要在屏幕上显示自

6、己的数据。由于WINDOWS是一个设备无关的操作系统,所以任何向屏幕上进行输出的功能都要间接地通一个叫做设备上下文(devicecontext)的对象来完成。我们向设备上下文提出屏幕输出的要求,然后由WINDOWS自己来调用具体的输出设备的驱动程序来完成实际的输出工作。MFC的CDC类DC代表一条图形的输出途径,在MFC中通过CDC类来实现图形的输出(显示)来简化图形显示的操作.CDCCClientDCCMetaFileDCCPaintDCCWindowDCCObjectP31CDC类的常用函数MoveTo:移动当前位置。LineTo:从当前位置到一点画直线。TextOut:用当前的字体显示字

7、符串。BitBlt:从指定设备上下文拷贝图像。CreateCompatibleDC:创建内存设备上下文,与另一设备上下文匹配。如在内存中准备显示的图像。SelectObject:选择画笔等GDI绘图对象。MFC绘图函数在MFC程序中一般通过响应WM_PAINT消息来实现窗口图形的重绘。如果程序在视图窗口以外的窗口(如对话框)显示图形,则窗口应提供WM_PAINT的消息处理函数---OnPaint,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。