mfc图形和文本输出..pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
mfc图形和文本输出.

3 图形和文本输出 3.1 图形设备接口和设备环境 3.2 GDI对象CGdiObject 3.3 画笔和画刷的使用 3.4 文本 3.5 位图 3.6 上机指导 Windows应用程序绘图过程 设备环境DC 为了体现Windows的设备无关性,应用程序的输出不直接面向显示器或打印机等物理设备,而是面向被称为设备环境DC的虚拟逻辑设备 DC是由GDI创建、用来代表设备连接的数据结构 DC的主要功能 允许应用程序使用一个输出设备。 提供Windows应用程序、设备驱动和输出设备之间的连接。 保存当前信息,例如当前的画笔、画刷、字体和位图等图形对象及其属性,以及颜色和背景等影响图形输出的绘图模式。 保存窗口剪切区域(Clipping Region),限制程序输出到输出设备中窗口覆盖的区域。 设备环境类 设备环境类CDC及其功能 设备环境类CDC的一些常用函数 设备环境类CDC MFC封装了DC,提供CDC类及它的子类以访问GDI。 环境设备类的功能 演示颜色设置 COLORREF rgbBkClr=RGB(255,0,0); pDC-SetBkColor(rgbBkClr); pDC-SetTextColor(RGB(0,0,255)); pDC-TextOut(100,100,Hello World); 获取设备环境 绘图前,必须准备好设备环境DC。 1、传统的SDK获取设备环境 2、MFC应用程序获取设备环境 传统SDK获取设备环境 (1)在WM_PAINT消息处理函数中使用API函数BeginPaint( )获取设备环境,在消息处理函数返回前调用API函数EndPaint( )释放设备环境。 (2)不在WM_PAINT消息处理函数中,调用API函数GetDC( )获取设备环境,调用API函数ReleaseDC( )释放设备环境。 使用SDK全局函数画线OnLButtonUp OnLButtonDown 使用设备句柄(画图前必须先获得一个DC)和窗口 句柄(m_hWnd继承自CWnd,通过窗口句柄获得设 备句柄GetDC());调用全局函数MoveToEX()和 LineTo(),画完使用ReleaseDC()释放资源 HDC hdc; hdc = ::GetDC(m_hWnd); MoveToEx(hdc,pt.x,pt.y,NULL); LineTo(hdc,point.x,point.y); ::ReleaseDC(m_hWnd,hdc); MFC应用程序获取设备环境 MFC提供了不同类型的设备环境类CDC(CDC、CPaintDC、CClientDC、CWindowDC等),每一个类都封装了设备环境句柄,并且它们的构造函数可自动调用上述获取设备环境的Win32 API函数,析构函数可自动调用释放设备环境的Win32 API函数。 在一个MFC应用程序中获得DC的方法主要有两种: 1、定义一个CDC类型的指针,使用CWnd类的GetDC函数获得当前窗口的设备描述表的指针; 2、声明一个 MFC设备环境类的对象,并使用this指针为该对象赋值。 示例 CDC * pDC = GetDC(); pDC-MoveTo(pt); pDC-LineTo(point); ReleaseDC(pDC); 示例 3.1 OnDraw() 3.2 OnPaint() CView类派生自CWnd类。OnPaint()是CWnd的 类成员,同时负责响应WM_PAINT消息(窗 口重绘)。 OnDraw()是CVIEW的成员函数,并且没有响 应消息的功能。 3.3-3.4 3.2 GDI对象CGdiObject Windows中封装了各种GUI对象,绘图时需要利用这些对象。 对象拥有各种属性。 对象有默认属性。 这些属性可以重新被设置。 CGdiObject类及子类 CPen 画笔CPen对象在画点和画线时使用。它的属性包括颜色,宽度,线的风格,如虚线、实线,点划线等等。 默认的画笔用于绘制一个像素等宽的黑色实线。 CBrush 画刷CBrush对象决定填充封闭区域时所采用的颜色或模板。 画刷默认的颜色为白色。 CFont 字体对象CFont用于输出文字时选用不同风格和大小的字体。包括文字的大小、是否加粗、是否斜体、是否加下划线等等。 CBitmap 位图CBitmap对象包含一副图像,可以保存在资源中,用于填充区域。 3.3 画笔和画刷的使用 3.3.1 使用库存stock对象 3.3.2 创建和使用自定义画笔 3.3.3 创建和使用自定义画刷 系统默认绘图属性 无论以CDC类对象指针形式还是以CDC子类对象形式获得设备环境,系统都

文档评论(0)

叮当文档 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档