- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MFC基本的图形绘制 CDC类
MFC图形绘制
1 、Windows应用程序概述
1、设备环境类CDC
设备环境是由Windows保存的一个数据结构,该结
构包含应用程序向设备输出时所需要的信息,例如
:图形是在屏幕上显示还是通过打印机输出。为了
能让用户使用一些特殊的设备环境,基类CDC还派
生了以下各类:
(1)CPaintDC类,此类比较特殊,它的构造函数和
析构函数都是针对OnPaint进行的。用户一旦获得相
关的CDC指针,就可以将它当做任何设备环境(包
括屏幕、打印机)指针来使用,CPaintDC类的构造
函数会自动调用BeginPaint ,而它的析构函数则会自
动调用EndPaint 。
2015/10/27
(2 )CClientDC
CClientDC只能在窗口的客户区(不包括边框、标题栏、选
单栏以及状态栏)进行绘图,点(0,0 )通常指的是客户区
的左上角。其构造函数调用GetDC,析构函数调用ReleaseDC
函数
用法是:CClientDC dc(this); ;
//this一般指向本窗口或当前活动视图
dc.TextOut(10,10,str,str.GetLength());
(3 )CWindowDC
• 允许在窗口的任意位置中进行绘图,点(0,0 )指整个窗
口的左上角。其构造函数调用GetWindowDC,析构函数
调用ReleaseDC 函数。
2015/10/27
2 、图形设备接口
• Windows为设备环境提供了各种各样的绘图工具,例如:
画笔、画刷、字体等。MFC封装了这些工具,并提供相应
的类来作为应用程序的图形设备接口(GDI,
Graphics Device Interface ),这些类有一个共同的抽象基
类CGdiObject,如下所示:
类名说明:
• CBitmap “位图”是一种位矩阵,每一个显示像素都对
应于其中的一个或多个位,用户可以利用位图来表示图象
,也可以利用它来创建画刷。
• CBrush “画刷”定义了一种位图形式的像素,利用它可
对区域内部填充颜色或样式。
2015/10/27
2 、图形设备接口
• CFont “字体”是一种具有某种风格和尺寸的所有字符
的完整集合,它常常被当做资源存于磁盘中,其中有一些
还依赖于某种设备。
• CPalette “调色板”是一种颜色映射接口,它允许应用程
序在不干扰其它应用程序的前提下,充分利用输出设备的
颜色描绘能力。
• CPen “画笔”是一种用于画线及绘制有形边框的工具
,用户可以指定它的颜色及宽度,并且可以指定它实线、
点线或虚线等。
• CRgn “区域”是由多边形、椭圆或二者组合形成的一
种范围,可以利用它来进行填充、裁剪以及鼠标点中测试
等。
2015/10/27
创建画笔的方式
• 1
2015/10/27
2015/10/27
2015/10/27
2015/10/27
讲解1
• 画一个椭圆,并填充一定的颜色,每单击
一次鼠标,椭圆的颜色进行一次更改。
2015/10/27
文档评论(0)