- 1
- 0
- 约4.5千字
- 约 33页
- 2018-02-26 发布于江苏
- 举报
【计算机】第10章 图形设备接口1
10.1 CDC类 在Windows中向屏幕或打印机上绘图时,需要调用GDI(图形设备接口)函数,GDI与设备驱动程序实现了设备无关的图形操作。 设备描述符表DC(Device Contex)是Windows的一个数据结构,用来确定GDI输出的位置和形象的属性集合,如背景、调色板、字体、刷子等。 在Visual C++ 6.0中,MFC将设备描述符(DC)和图形设备接口(GDI)都封装在CDC类中。 10.1 CDC类 CDC类既包含了有关设备的属性,同时又包含了绘图方法 MFC还提供了CDC的派生类CPaintDC类、CClientDC类和CWindowDC类支持绘图操作。 CClientDC类支持在客户区绘图 CWndowDC类支持在整个窗口绘图。CClientDC类与 CWndowDC类支持实时响应 CPaintDC类用于重画。也就是说用CClientDC和CWindowDC类绘图时,显示器会将立即显示,而用CPaintDC类绘图时,要到下次重画时才显示。 10.1.1 CDC类的绘图函数 SetPixel() :用于在指定坐标处按指定色彩画一点,函数的原型有两种形式 : (1)COLORREF SetPixel( int x, int y, COLORREF crColor ); (2)COLORREF SetPixel( POINT point, COLORREF crColor ); 函数的返回值为所画点原来的颜色,其中,crColor为所画点的新颜色,(1)中的参数x和y表示点的坐标;(2)中的位置坐标用POINT结构变量来表示x和y的点的坐标。 10.1.1 CDC类的绘图函数 MoveTo() :画线时的当前位置可以通过MoveTo()设定,函数的原型有两种形式。 CPoint MoveTo( int x, int y ); CPoint MoveTo( POINT point ); 函数返回值为MoveTo()函数执行前的当前位置 10.1.1 CDC类的绘图函数 LineTo() :函数的功能是从当前坐标位置向指定坐标点画一条直线,且后一个坐标点在画线完成后自动变成当前绘图位置。函数原型为以下两种形式: BOOL LineTo( int x, int y ); BOOL LineTo( POINT point ); 如果直线已画好,函数返回TRUE,否则返回FALSE。 10.1.1 CDC类的绘图函数 Rectangle() :函数的功能是使用当前选定的画笔绘制一个矩形,并使用当前选定的画刷填充矩形,函数原型为: BOOL Rectangle( int x1, int y1, int x2, int y2 ); BOOL Rectangle( LPCRECT lpRect ); 对其中的参数说明如下: ( x1, y1 ):矩形左上角的坐标。 ( x2, y2 ):矩形右下角的坐标。 lpRect:指向矩形的指针。 10.1.1 CDC类的绘图函数 Ellipse() :函数的功能是使用当前选定的画笔绘制一个椭圆,并使用当前选定的画刷填充椭圆,函数原型为: BOOL Ellipse( int x1, int y1, int x2, int y2 ); BOOL Ellipse( LPCRECT lpRect ); 对其中的参数说明如下: ( x1, y1 ):包围椭圆的矩形区域左上角的坐标。 ( x2, y2 ):包围椭圆的矩形区域右下角的坐标。 lpRect:用于定义包围椭圆的矩形区域。 10.1.1 CDC类的绘图函数 Polygon() :函数的功能是生成一个封闭的多边形,函数原型为: BOOL Polygon( LPPOINT lpPoints, int nCount ); 对其中的参数说明如下: lpPoints:是一个由多边形的顶点组成的数组。 nCount:多边形的顶点个数。 10.1.2 CPaintDC类 CPaintDC类 CPaintDC类主要用于消息处理函数OnPaint()。OnPaint()是ON_PAINT消息的消息响应函数。WM_PAINT消息在窗口被刷新、重画、改变大小时产生。窗口移动,大小改变时CPaintDC将自动地重画窗口内容。此处自动的含义是指将发出WM_PAINT,执行OnPaint()函数。 例:10.1 P363 10.1.2 CClientDC和CWindowDC类 CClientDC类适合于任何需要使用客户区的情形 。 CWindowDC类可以在整个应用程序的窗口上画图 例10.2 P364 10.2 图形对象 MFC定义若干种对应于Windows的会同工具的图形对象。包括:
您可能关注的文档
- 【计算机】AAI09-4粗糙集.ppt
- 【计算机】AAI09-1知识发现.ppt
- 【计算机】AAI02人工智能逻辑.ppt
- 【计算机】AAI10-1_分布式人工智能.ppt
- 【计算机】AAI10-2_多主体规划.ppt
- 【计算机】AAI11_进化计算.ppt
- 【计算机】AAI12_人工生命.ppt
- 【计算机】APPLIED OPERATING SYSTEM CONCEPTS(AOSC)介绍.ppt
- 【计算机】CH03_OPERATING SYSTEM STRUCTURES.ppt
- 【计算机】CH01 SOFTWARE AND SOFTWARE ENGINEERING.ppt
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 髌骨脱位康复护理新进展.pptx VIP
- 58同城加盟合同范本.docx VIP
- 急救医学-第四章心悸.ppt VIP
- 高中数学必修第四册第十一章综合测试01含答案解析.pdf VIP
- 2022年高考物理核心高频考点专题22 圆周运动的轻绳、轻杆模型(解析版).pdf VIP
- 马工程-中国古代文学史(第二版)上册第三编魏晋文学全套PPT课件50109.pptx
- 马工程-中国古代文学史(第二版)上册第二编秦汉文学全套PPT课件-50109.pptx
- 58同城同镇代理加盟流程说明.docx VIP
- 马工程-中国古代文学史(第二版)上册第一编先秦文学全套PPT课件-50109.pptx
- 58同城加盟合同范本.docx VIP
原创力文档

文档评论(0)