【计算机】第10章 图形设备接口1.pptVIP

  • 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的会同工具的图形对象。包括:

文档评论(0)

1亿VIP精品文档

相关文档