




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目 录第一章 VC开发环境简介31.1 熟悉Visual C+实验环境31.2 VC+6.0的使用控制台应用41.3 Windows应用101.4 编写简单的计算程序15第二章 实验内容安排18第三章 实验要求、评分标准19第四章 实验内容20实验一 C/C+程序初步20实验二面向对象编程实践22实验三 MFC控件编程实践24实验四 文件的操作26实验五 MFC综合编程29第一章 VC开发环境简介本章将简要介绍Visual C+开发环境的一些知识,并尝试实现一个简单的DOS程序和Windows程序。通过本次实验,你可以了解用Visual C+开发C+应用程序的过程。 1.1 熟悉Visual C+实验环境步骤(1) 启动Developer Studio,看看初始化界面由哪些部分组成(2) 查看各菜单项,看看都有哪些子菜单和命令(3) 将鼠标放置于各工具条图标上,系统会自动显示该图标代表的命令含义,了解一下都有哪些命令。 (4) 在任意工具条上单击鼠标右键,弹出式菜单上将显示所有可用的工具条,选择其中没有对号()的项,看看有什么效果,再选择有对号的项,又有什么效果?(5) 将鼠标移动到任意工具条上,将鼠标放到图标间隙,按下鼠标左键不放,移动鼠标到屏幕中间,有什么现象发生?再将它拖回到原来位置,有什么现象发生? (6) 将鼠标移动到左边的工作区窗口,按下鼠标左键不放,移动鼠标到屏幕中间,有什么现象发生?再将它拖回到原来位置,有什么现象发生?(7) 将鼠标移动到下边的输出窗口,按鼠标右键,弹出一个菜单,选择其中的菜单项Hide,结果如何?要重新显示该窗口,选择菜单View|Output,窗口是不是又显示出来了? (8) 学习使用帮助系统。如果你用的是Visual C+5.0,则在工作区窗口的InfoView中选择你感兴趣的内容,双击它,在文档区显示具体的帮助信息。如果你用的是Visual C+6.0,选择菜单Help|Contents,启动MSDN联机帮助系统,学习使用该帮助系统。联机帮助系统是一个相对独立的程序,它和Developer Studio是两个程序,但是它的启动和停止都受Developer Studio影响。MSDN联机帮助系统运行的前提条件是Developer Studio在运行。 (9) 选File|Exit退出Developer Studio。1.2 VC+6.0的使用控制台应用1. 新建一个项目。单击File,弹出图1如下:图1点击New后弹出如下对话框:图2在图2中的Projects标签下选择Win32 Console Application,在右边的Project name输入框中输入你的项目名称(此例中我们把项目名称取为FirsPro),在中通过点击可以选择项目的保存位置。注意要选中单选按钮,然后点击下面的,弹出如下对话框:图3点击按钮,再在随后弹出的对话框中点击“OK”按钮就建好了一个新项目了。2. 在项目中添加c+源文件。点击如图4中的,展现项目的文件视图。图4点击菜单中的File,在弹出的菜单中点击New,弹出图2,在图2中,选择File标签图5在图5中选择c+ Source File,在输入框中输入c+源文件的文件名(此例中源文件取名为ComplexNum),注意不要加文件名后缀,点击后就建好了一个c+源文件。结果如图6所示:图6在图6中的右侧就可以输入代码了。如图7 :完成代码的输入后点击图7中右上方中的进行对源代码的编译,如果没有错误,就点击生成可执行文件,最后点击运行该程序。常用编辑命令 虽然许多编辑命令可以通过菜单和工具栏实现,但大量的编辑命令都可以通过键盘实现。以下命令通常用键盘实现:* 撤消前一次操作。当你进行了一次错误的操作时,可以通过敲击键盘上的Ctrl+Z完成;* 重复前一次操作。通过敲击Ctrl+Y实现* 剪切一行。用Ctrl+L来删除一行并将它放到剪切板中* 剪切。将选中的文本删除并将它放到剪切板中,用Ctrl+X实现* 复制。将选中的文本复制到剪切板中,用Ctrl+C实现* 粘贴。将剪切板中的内容放到编辑器中文本的当前位置处(由光标指示),用Ctrl+V实现1.3 Windows应用用AppWizard建立一个MFC Windows应用,在窗口中输出Hello,World!术语:AppWizard是一个工具,利用该工具,你可以创建一个建立在MFC基础上的窗口应用程序框架,然后在这个框架中加上自己的应用逻辑。你可以选择所创建的应用类型,最常用的是多文档应用(就象你用的字编辑器Microsoft Word一样,可以同时打开多个文档窗口的应用)、单文档应用(类似于Windows提供的notepad,一次只能打开一个文档)和对话框应用(类似于Windows的时钟程序)。步骤1) 创建一个新项目利用Developer Studio的AppWizard创建一个新的项目,步骤为:(1) 选择菜单File|New,系统将显示New对话框(2) 选择Projects标签,在显示的项目类型中选择MFC AppWizard(exe),(见上图)(3) 在右边的Project Name编辑框中输入项目名称,如“helloMFC,然后按OK.(4) MFC AppWizard 将分几步询问你有关要建立的新项目的配置。第一个对话框问你是创建哪种类型的应用(单文档、多文档还是对话框类型),选择创建单文档应用“Single document,然后按Next按钮。(5) 翻过后面的五个页面(按Next),每个页面可以让你改变项目的不同选项,这个例子暂时不设置这些选项。(6) 最后一个MFC AppWizard屏幕告诉你App Wizard为你自动产生的类。单击Finish键,AppWizard显示一个关于该项目的摘要,列出这些类和你所选择的特征。如图所示:(7) 单击OK(完成),系统自动产生helloMFC所需要的文件。2) 浏览helloMFC项目当你用MFC AppWizard创建了helloMFC项目后,这个项目的工作区窗口将会打开,(如下图):其中ClassView显示工作区中所有项目的类及类的成员;ResourceView显示项目中包含的资源文件;FileView显示项目中的各种文件资源。你可以先选择FileView看一下AppWizard为你创建了哪些文件,然后选择ClassView看一下定义了哪些类。ClassView中还可以看到一个Globals文件夹,单击它前面的加号,可以看到,有一个预定义的全局变量theApp,这是你的Windows应用程序类的对象。3) 编译连接运行按F7或者选择菜单Build|Build helloMFC.exe或,编译连接得到可执行程序,再按Ctrl+F5、或者选择Build|Execute helloMFC.exe运行该程序。程序的结果如下:4) 用MFC处理输出现在是你来修改程序的时候了。我们希望在程序中间的窗口上显示一行文字“Hello, World 。如何修改呢?(1) 在工作区窗口中选择ClassView标签,单击helloMFC classes前面的加号(如果已经变成减号则不做此操作)(2) 单击类CHelloMFCView类前面的加号(3) 双击OnDraw()函数,在右边的文档将显示窗口显示文件helloMFCView的内容,并且自动将光标定位到函数OnDraw()处。(4) 修改OnDraw函数的定义,在最后一行加一句:pDC-TextOut(50,50,Hello, World);(5) 按Ctrl+s或者选菜单File|Save来保存所作的修改5) 编译连接并运行重新编译连接该项目,运行程序,你可以用Ctrl+F5直接运行程序,系统将询问你是否重新编译该项目,回答“是(Yes)”,如果有编译错误,仔细检查你加的一句话,是否有错。当编译连接通过后,系统会自动运行该程序。结果与上面有什么不同?经过上述修改后,程序可以输出一行文字“Hello, World。这是你实现的第一个Windows程序!是不是很简单?!不要担心有很多不懂的地方,后面的实验中你会慢慢理解。现在你应该会觉得:哦,原来Windows程序的开发这么简单!1.4 编写简单的计算程序输入圆的半径,计算圆的周长和面积并输出。测试数据输入:2输出:The perimeter of the circle : 12.5664The area of the circle : 12.5664输入:10输出:The perimeter of the circle : 62.8318The area of the circle : 314.159步骤1) 创建一个控制台项目选择菜单File|New,在Projects标签下选择Windows32 Console Application,输入项目名称“circle,然后按OK2) 在项目中增加一个文件选择菜单File|New,在Files标签下选择C/C+ Source File,输入文件名称“circle,然后按OK3) 在文件中输入以下内容/该程序让用户输入圆的半径Radius,输出圆的周长Perimeter和面积Area#include #include const double PI = 3.14159; /定义一个常量PIint main() int radius;double perimeter, area;cout radius;perimeter = 2 * PI * radius; /周长=2Rarea = PI * power(radius, 2); /面积=R2cout The perimeter of the circle : perimeter endl;cout The area of the circle : area endl;return 0;注:power(radius,2)表示求radius的平方,power(x, y)是系统预定义的函数,该函数计算x的y次方。该函数的原型在文件math.h中说明。4) 编译、连接并运行程序如果你输入的程序有误,用下面的方法定位并修改错误。直到编译连接通过。运行程序,测试数据。编译和连接错误定位* 开发环境下方的输出窗口(Output)显示编译和连接过程中出现的错误,错误信息包括:错误出现的文件名、行号、错误代码。* 如果不懂错误消息,将光标移动到该错误信息,按F1,就可以显示该错误的帮助信息。* 在output窗口,双击错误或者选择该错误再按ENTER键,系统自动将光标移动到发生错误的源程序行,你然后就可以改正错误。* F4键可以选择并定位下一个错误思考问题(1) 程序中为什么要将头文件math.h包含进来?(2) 建立控制台应用程序的通用步骤是怎样的?第二章 实验内容安排课程名称:面向对象WINDOWS编程技术课程总学时: 50 实验总学时: 30 面向专业(层次): 信息与计算科学 应开实验项目数: 5个 应开实验时间: 第3学期 实验类别: 专业 本门课程实验目的与要求: 1、掌握面向对象程序设计分析方法,并应用于编程实践。2、学会设计并调试WINDOWS应用程序,进一步提高开发能力。 3、掌握WINDOWS应用程序设计的基本方法。本课程实验项目一览表序号实验项目名称实验学时目的与要求实验要求实验类型每组人数备 注1C+应用程序初步2了解C+程序设计方法及VC编程环境必修验证12面向对象编程实践10掌握类归纳与设计、类的继承与派生、多态等原理及在程序设计中应用必修验证13MFC控件编程实践12掌握MFC程序设计方法、MFC控件应用(标准控件、公共控件、文档/视等)必修验证14文件操作2掌握MFC文件串行化操作方法必修验证15MFC综合编程4设计开发一个基于MFC的小应用程序必修综合1大纲制定日期:2004/8 大纲执笔人:彭永康 大纲审定人:章义来第三章 实验要求、评分标准1. 实验前必备做课前预习,准备好预习报告,独立完成实验。2. 实验过程中遵守实验室的各项规章制作,不得在实验过程中玩游戏,从事与本实验无关的内容。3. 课后认真总结,写出实验报告,及时上交教师批阅。4. 不得随意更改实验时间,在安排时间不上实验算旷课处理,整个实验过程中旷课时间占实验总学时40以上时,该同学的实验成绩作降级处理。5. 实验报告不上交教师批阅的,该同学的平时成绩将作降级处理。6. 实验报告上交率不足70以上的,考查课该同学最终成绩不得超过中,不足65不得超过及格,低于65为不及格;考试课则该同学平时成绩不超过12分。第四章 实验内容实验一 C/C+程序初步目的:1. 了解简单C+程序的构成;2. 掌握cin,cout等流式输入输出设备的用法;3. 了解掌握函数重载的实现及原理。实验内容:1. 应用cin,cout实现“Hello,World!”程序的C+版本。2. 应用函数重载技术实现对整数、浮点数、长整数求绝对值的C+程序。实验要求:1. 每位同学在实验前认真做好实验准备,阅读VC操作的介绍,对操作VC进行编程的步骤及方法先期进行了解;2. 在实验中出现的错误,先自己进行认真的程序检查,力争自己找出错误并掌握C+中改正错误的方法。3. 在实验结束后,对实验的结果进行整理,并写出一份实验报告,及时上交老师。参考程序: include void main() cout”Hello,World!”endl; 思考题:1. n字符与 endl 的作用是否相同,上述程序中的cout”Hello,World!”endl 是否可用下列语名代替? Cout”Hello,World!n”;2. 函数重载的原则是什么?实验二面向对象编程实践实验目的:1. 掌握类的抽象与封装,对象的概念及在VC下定义类的方法。2. 类中成员的继承与类的派生实现。3. 掌握从现有类派生出新类的方法及VC下的具体操作。4. 了解在派生类、基类的成员的继承原则。5. 了解基类成员在派生类中的访问控制方式。6. 了解掌握静态多态与动态多态的原理及区别及程序实现方法。7. 了解掌握模板的定义方式及应用。8. 掌握重载的原理与实现方法。实验内容本实验内容共分为类的抽象与封装、类的继承及派生、重载、模板等四个实验阶段,共10个实验学时,可按3、2、2、3学时分配方案进行分配。1. 设计实现一类CPerson,拥有姓名、性别、地址、联系电话、Email等数据成员,拥有带参数的构造函数CPerson:CPerson(),实现对上述数据成员赋初值;拥有一成员函数Output,实现将姓名、性别、地址、联系电话、Email制表输出。现有10个人的信息,编程实现输入每人的信息,最后将所有人的信息列表输出。2. 以1题中的CPerson为基类,派生出Teacher、Student两个类,并在它们中增加专业字段,并重载CPerson类中的Output方法,实现在输出1中信息的同时,输出每个人的专业;在学生类中再增设教师ID字段,指出其班主任,最后实现一方法pringClass,按指定的班主任ID打印出该班的学生名单。3. 设计实现一个复数类,对、-、/四种运算符进行重载,实现对复数进行 +、*、/ 四种运算。4. 应用模板实现求任意数值的绝对值的C+函数,并验证它。思考问题a) 构造函数与析构函数的作用如何? 如何定义它们?b) 什么是静态类成员?在类中为什么只能声明静态类成员的名称,而类中不为静态类成员分配空间?c) 父类中具有不同访问属性的成员如何被子类继承?子类中可不可以有跟父类同名的成员函数?d) 简述函数重载的规则。e) 模板的作用是什么?重载技术与模板有什么异同?实验三 MFC控件编程实践实验目的1. 了解MFC应用程序的构成及向导实现。2. 掌握MFC中的DOC/VIEW结构类型的应用程序的构成及不同的类的作用。3. 掌握MFC中键盘、鼠标事件处理及编程规则;掌握菜单、按钮和工具条的资源编辑及在MFC应用程序中创建它们的方法。4. 掌握MFC中基于对话框及标准控件的UI设计及VC程序实现,重点掌握静态控件、文本框、列表框、组合框、进度条等控件的编程技能。5. 掌握MFC中基于公共控件的UI设计开发方法。实验内容 本次实验项目的实验内容主要是对引导学生掌握MFC程序设计过程中涉及的各项内容,实验内容可分为doc/view及消息处理,对话框设、按钮、文本框及静态文本框,列表框与组合框,进度条与时钟,树视及列表视控件等五个不同小项目来完成,教师可根据需要选择三到四个不同的实验子项目来完成本次实验。1. 根据教材中有关文本/视的教程,练习掌握Doc/View应用程序的开发步骤及过程。2. 对话设计。(设计实现一个对话框,实现如下功能: 对话上有一文本框(多行显示模式),三个按钮(打开、存储、退出),可实现通过单击“打开”按钮,将一文本文件中的文字信息导入文本框中显示,我们可以对文本框中的文本信息进行编辑,单击“存储”后将数据存入当前目录下的newData.txt文件中(类型为文本类型)3. 菜单点菜程序设计。本程序基于对话框开发设计,对话上有一组合框(用于显示菜谱分类),两列表框,一个列表框显示当前分类下的菜的名称各价格,在用户选中(可单选也可多选),单选时双击菜名即可实现点菜操作,多选时,在客户选择相应的菜名后,单击“点菜”按钮,即将客户选中的菜名全部复制到另一列表框中,同时显示客户所选菜的菜金总额。4. 电子时钟。应用MFC中的OnTimer事件设计实现一电子时钟,时钟以HH:MM:SS.nn方式显示,其中“nn”表示的是百分之一秒计量,同时在本对话框中设计一进度条,进度条中的进度显示的是百分之一秒度量的统计数值,当进度条到达99时,表明计时满1秒。5. 应用树视、列表视实现3中的点菜程序设计开发。思考题1. doc/view框架下,如何实现对键盘、鼠标事件处理?2. 如何根据需要定制菜单、工具条、状态栏?3. 如何实现文本数据的导入与存储?4. 如何改变文本框中的文字的字型信息?5. 面向对象技术如何应用于MFC编程?举例说明之。实验四 文件的操作实验目的1. 一步掌握建立、编译、连接与调试Windows应用程序的方法,掌握用MFC中的类CArchive来进行文件串行化操作的方法;2. 学习使用VC6.0环境的基本命令和功能键;3. 学习使用MFC开发程序的方法;实验内容 通过键盘输入文字数据,通过doc/view中的串行化机制实现文本数据的自动存取。实验步骤1、 启动VC6.0,新建一个单文档工程,并将该工程取名为TEXT;2、 在资源中增加位图资源,资源名为:IDB_BITMAP1;3、 在视图类中增加消息响应函数OnCreate,用该函数来在视图窗口中创建光标,同时,在该函数中得到字体的特征,函数代码如下:int CTextView:OnCreate(LPCREATESTRUCT lpCreateStruct) if (CView:OnCreate(lpCreateStruct) = -1)return -1;/ TODO: Add your specialized creation code here/得到系统字体的属性CClientDC dc(this);TEXTMETRIC tm;dc.GetTextMetrics(&tm);/创建光标bitmap.LoadBitmap(IDB_BITMAP1);CreateCaret(&bitmap);ShowCaret();return 0;4、在CtextView类中添加公有成员变量:CString m_strLine,该变量的作用用于保存键盘所输入的字符,同时添加公用成员变量int m_nWidth和CPoint m_ptOrigin;5、 CtextView类中响应鼠标左键按下事件OnLButtonDown,该函数的主要作用确定光标的位置,代码如下:6、 CtextView类中添加字符响应函数OnChar,在该函数中把输入的字符串按格式保存到字符变量m_strLine中,代码如下:void CTextView:OnLButtonDown(UINT nFlags, CPoint point) / TODO: Add your message handler code here and/or call defaultSetCaretPos(point);m_strLine.Empty();m_ptOrigin=point;CView:OnLButtonDown(nFlags, point);void CTextView:OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) / TODO: Add your message handler code here and/or call defaultCClientDC dc(this);CFont font;font.CreatePointFont(150,宋体,NULL);CFont *pOldFont=dc.SelectObject(&font);TEXTMETRIC tm;dc.GetTextMetrics(&tm);if(0x0d=nChar)m_strLine.Empty();m_ptOrigin.y+=tm.tmHeight;else if(0x08=nChar)COLORREF clr=dc.SetTextColor(dc.GetBkColor();dc.TextOut(m_ptOrigin.x,m_ptOrigin.y,m_strLine);m_strLine=m_strLine.Left(m_strLine.GetLength()-1);dc.SetTextColor(clr);elsem_strLine+=nChar;CSize sz=dc.GetTextExtent(m_strLine);CPoint pt;pt.x=m_ptOrigin.x+sz.cx;pt.y=m_ptOrigin.y;SetCaretPos(pt);dc.TextOut(m_ptOrigin.x,m_ptOrigin.y,m_strLine);dc.SelectObject(pOldFont);CView:OnChar(nChar, nRepCnt, nFlags);7、在CtextDoc中设立一个布尔型控制变量flag;并在CtextDoc类的构造函数中将该变量初始化为false;8、 入CtextDoc类的串行化函数Serialize中,开始对输入的文件进行保存和打开的操作,代码如下:void CTextDoc:Serialize(CArchive& ar)POSITION pos = GetFirstViewPosition();CTextView* pFirstView =(CTextView*)GetNextView( pos );if (ar.IsStoring()/ TODO: add storing code herearm_strLine;else/ TODO: add loading code herearpFirstView-m_strLine;flag=true;9、 同时在CtextView类的OnDraw函数中添加如下代码:void CTextView:OnDraw(CDC* pDC)CTextDoc* pDoc = GetDocument();ASSERT_VALID(pDoc);/ TODO: add draw code for native data here/下面是需添加的代码if(pDoc-flag)CSize sz=pDC-GetTextExtent(m_strLine);CPoint pt;pt.x=m_ptOrigin.x+sz.cx;pt.y=m_ptOrigin.y;SetCaretPos(pt);pDC-TextOut(m_ptOrigin.x,m_ptOrigin.y,m_strLine);pDoc-flag=false;10、运行所编写的程序,得出结果。实验五 MFC综合编程实验目的1. 通过本次实践,基本能完成简单的MFC应用软件设计。2. 掌握综合MFC各项知识进行各类MFC应用程序设计开发的能力。实验内容 本实验是本课程的最后一项实验项目,在本次实验中将综合训练学生的综合编程能力及开发一般软件的能力,可在下列题目中选择一题,自行设计方案,编程完成之。1. 综合所学知识,实现一基于树视、列表视的酒店点菜系统,系统中的菜单分类,菜肴简介及菜肴其它信息可以考虑存放在文件中,也可选择存放在数据库中,具体功能有系统初始化功能,完成菜肴信息及分类信息的录入,点菜功能即客户点菜功能,日结算功能即根据客户所点的菜肴清单分类统计出当日营业额及清单。2. 平面交互作图系统。实现通过鼠标拖放进行平面作图功能,图元存储功能及重显功能。Windows的图形设备接口(GDI)简介MFC的图形对象。 在MFC类库中,用CDC类封装设备文本对象。 CPaintDC类是从CDC类派生的设备环境类。CPaintDC类的对象在OnPaint()函数中使用。 另外,CClientDC类也是常用的CDC派生类,用于在OnPaint()函数外访问设备环境。画笔CPenCPen:CreatePenBOOL CreatePen (int nPenStyle, int nWidth, COLORREF crColor);第1个参数是画笔样式,可取画笔样式说明PS_SOLID创建实线笔PS_DASH创建由短线构成的虚线PS_DOT创建由点构成的虚线PS_DASHDOT创建由短线和点构成的虚线PS_DASH_DOTDOT创建由短线、点、点构成的虚线PS_NULL创建空(空白)画笔第2个参数为线宽 第3个参数为线的颜色,可使用RGB()函数指定画刷CBrush类 BOOL CreateSolidBrush ( COLORREF crColor );参数crColor指定了画刷的颜色。BOOL CreateHatchBrush ( int nIndex, COLORREF crColor );其中参数nIndex指定了阴影风格,可取值为:阴影风格说明HS_BDIAGONAL 从左下角到右上角的45度斜线HS_CROSS 水平线与垂直线HS_DIAGCROSS 相互垂直的45度线HS_FDIAGONAL 从左上角到右下角的45度斜线HS_HORIZONTAL 水平线HS_VERTICAL 垂直线CDC类CDC:SelectObject()函数原型如下:CPen* SelectObject( CPen* pPen );CBrush* SelectObject( CBrush* pBrush );virtual CFont* SelectObject( CFont* pFont );绘画模式 在Windows中,绘图的最终效果不但取决于画笔和画刷的设置,还可以通过设定绘图模式来修正。CDC的成员函数SetROP2()设定,其原型为:int SetROP2 ( int nDrawMode );其中参数nDrawMode为选定的绘图模式,常用模式有:绘图模式 说明R2_BLACK 无论画笔色如何,只用黑色绘图;R2_WHITE 无论画笔色如何,只用白色绘图;R2_NOP无论画笔色如何,用无色笔绘图;R2_NOT用与背景色相反的颜色绘图;R2_NOTCOPYPEN 用与画笔色相反的颜色绘图;R2_COPYPEN 用画笔色绘图;R2_XORPEN 对画笔色和背景色作异或(XOR)运算GDI坐标系 GDI支持两种类型的坐标系逻辑坐标系 与 设备坐标系 映射模式逻辑单位x递增方向y递增方向MM_TEXT像素向右向下MM_LOMETRIC 0.1mm向右 向上MM_HIMETRIC 0.01mm向右向上MM_LOENGLISH 0.01inch向右向上MM_HIENGLISH 0.001inch向右向上MM_TWIPS 1/1440inch 向右向上MM_ISOTROPIC 可调整 (x = y) 可选择可选择MM_ANISOTROPIC 可调整(x != y) 可选择可选择设置映射模式CDC:SetMapMode(),其原型为virtual int SetMapMode ( int nMapMode );参数nMapMode为欲设置的映射模式 返回值为原来的映射模式。参看13.2:“打印和打印预览”Windows下使用的设备坐标系统客户区坐标系统 窗口坐标系统 屏幕坐标系统。void ScreenToClient( LPPOINT lpPoint ) const;void ScreenToClient( LPRECT lpRect ) const;void ClientToScreen( LPPOINT lpPoint ) const;void ClientToScreen( LPRECT lpRect ) const;DPtoLP()用于将设备坐标转换为逻辑坐标void LPtoDP ( LPPOINT lpPoints, int nCount = 1 ) const;void LPtoDP ( LPRECT lpRect ) const;void DPtoLP ( LPPOINT lpPoints, int nCount = 1 ) const;void DPtoLP ( LPRECT lpRect ) const;字体 CFont类成员函数的原型为:BOOL CreateFont( int nHeight, / 字符逻辑高度int nWidth, / 字体逻辑宽度int nEscapement, / 出口矢量与X轴的角度int nOrientation, / 字符基线与X轴的角度int nWeight, / 字体磅值BYTE bItalic, / 非0则为斜体BYTE bUnderline, / 非0则加下划线BYTE cStrikeOut, / 非0则加删除线BYTE nCharSet, / 此字体的字符集BYTE nOutPrecision, / 输出精度BYTE nClipPrecision, / 裁剪精度BYTE nQuality, / 输出质量BYTE nPitchAndFamily, / 调距和字体族LPCTSTR lpszFacename )
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论